0001107843-24-000038.txt : 20241105 0001107843-24-000038.hdr.sgml : 20241105 20241105170521 ACCESSION NUMBER: 0001107843-24-000038 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 81 CONFORMED PERIOD OF REPORT: 20240930 FILED AS OF DATE: 20241105 DATE AS OF CHANGE: 20241105 FILER: COMPANY DATA: COMPANY CONFORMED NAME: QUALYS, INC. CENTRAL INDEX KEY: 0001107843 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-PREPACKAGED SOFTWARE [7372] ORGANIZATION NAME: 06 Technology IRS NUMBER: 770534145 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-35662 FILM NUMBER: 241428452 BUSINESS ADDRESS: STREET 1: 919 E. HILLSDALE BLVD. CITY: FOSTER CITY STATE: CA ZIP: 94404 BUSINESS PHONE: 650-801-6100 MAIL ADDRESS: STREET 1: 919 E. HILLSDALE BLVD. CITY: FOSTER CITY STATE: CA ZIP: 94404 FORMER COMPANY: FORMER CONFORMED NAME: QUALYS INC DATE OF NAME CHANGE: 20000225 10-Q 1 qlys-20240930.htm 10-Q qlys-20240930
0001107843--12-312024Q3false31111P3Y318269456468xbrli:sharesiso4217:USDiso4217:USDxbrli:sharesiso4217:EURiso4217:GBPiso4217:INRiso4217:CADxbrli:pureqlys:segment00011078432024-01-012024-09-3000011078432024-10-2400011078432024-09-3000011078432023-12-3100011078432024-07-012024-09-3000011078432023-07-012023-09-3000011078432023-01-012023-09-3000011078432022-12-3100011078432023-09-300001107843us-gaap:CommonStockMember2023-12-310001107843us-gaap:AdditionalPaidInCapitalMember2023-12-310001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-310001107843us-gaap:RetainedEarningsMember2023-12-310001107843us-gaap:RetainedEarningsMember2024-01-012024-03-3100011078432024-01-012024-03-310001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-03-310001107843us-gaap:CommonStockMember2024-01-012024-03-310001107843us-gaap:AdditionalPaidInCapitalMember2024-01-012024-03-310001107843us-gaap:CommonStockMember2024-03-310001107843us-gaap:AdditionalPaidInCapitalMember2024-03-310001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-310001107843us-gaap:RetainedEarningsMember2024-03-3100011078432024-03-310001107843us-gaap:RetainedEarningsMember2024-04-012024-06-3000011078432024-04-012024-06-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-04-012024-06-300001107843us-gaap:CommonStockMember2024-04-012024-06-300001107843us-gaap:AdditionalPaidInCapitalMember2024-04-012024-06-300001107843us-gaap:CommonStockMember2024-06-300001107843us-gaap:AdditionalPaidInCapitalMember2024-06-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-300001107843us-gaap:RetainedEarningsMember2024-06-3000011078432024-06-300001107843us-gaap:RetainedEarningsMember2024-07-012024-09-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-07-012024-09-300001107843us-gaap:CommonStockMember2024-07-012024-09-300001107843us-gaap:AdditionalPaidInCapitalMember2024-07-012024-09-300001107843us-gaap:CommonStockMember2024-09-300001107843us-gaap:AdditionalPaidInCapitalMember2024-09-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-09-300001107843us-gaap:RetainedEarningsMember2024-09-300001107843us-gaap:CommonStockMember2022-12-310001107843us-gaap:AdditionalPaidInCapitalMember2022-12-310001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001107843us-gaap:RetainedEarningsMember2022-12-310001107843us-gaap:RetainedEarningsMember2023-01-012023-03-3100011078432023-01-012023-03-310001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310001107843us-gaap:CommonStockMember2023-01-012023-03-310001107843us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-310001107843us-gaap:CommonStockMember2023-03-310001107843us-gaap:AdditionalPaidInCapitalMember2023-03-310001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-310001107843us-gaap:RetainedEarningsMember2023-03-3100011078432023-03-310001107843us-gaap:RetainedEarningsMember2023-04-012023-06-3000011078432023-04-012023-06-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300001107843us-gaap:CommonStockMember2023-04-012023-06-300001107843us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-300001107843us-gaap:CommonStockMember2023-06-300001107843us-gaap:AdditionalPaidInCapitalMember2023-06-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-300001107843us-gaap:RetainedEarningsMember2023-06-3000011078432023-06-300001107843us-gaap:RetainedEarningsMember2023-07-012023-09-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-012023-09-300001107843us-gaap:CommonStockMember2023-07-012023-09-300001107843us-gaap:AdditionalPaidInCapitalMember2023-07-012023-09-300001107843us-gaap:CommonStockMember2023-09-300001107843us-gaap:AdditionalPaidInCapitalMember2023-09-300001107843us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-09-300001107843us-gaap:RetainedEarningsMember2023-09-300001107843us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2024-09-300001107843us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2024-09-300001107843us-gaap:FairValueMeasurementsRecurringMember2024-09-300001107843us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2023-12-310001107843us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2023-12-310001107843us-gaap:FairValueMeasurementsRecurringMember2023-12-310001107843us-gaap:MoneyMarketFundsMemberus-gaap:CashEquivalentsMember2024-09-300001107843us-gaap:CommercialPaperMemberus-gaap:CashEquivalentsMember2024-09-300001107843us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMemberus-gaap:CashEquivalentsMember2024-09-300001107843us-gaap:CashEquivalentsMember2024-09-300001107843us-gaap:ShortTermInvestmentsMemberus-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember2024-09-300001107843us-gaap:ShortTermInvestmentsMemberus-gaap:CorporateDebtSecuritiesMember2024-09-300001107843us-gaap:ShortTermInvestmentsMemberus-gaap:USGovernmentAgenciesDebtSecuritiesMember2024-09-300001107843us-gaap:ShortTermInvestmentsMember2024-09-300001107843us-gaap:OtherLongTermInvestmentsMemberus-gaap:CorporateDebtSecuritiesMember2024-09-300001107843us-gaap:OtherLongTermInvestmentsMemberus-gaap:AssetBackedSecuritiesMember2024-09-300001107843us-gaap:OtherLongTermInvestmentsMemberus-gaap:USGovernmentAgenciesDebtSecuritiesMember2024-09-300001107843us-gaap:OtherLongTermInvestmentsMember2024-09-300001107843us-gaap:MoneyMarketFundsMemberus-gaap:CashEquivalentsMember2023-12-310001107843us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMemberus-gaap:CashEquivalentsMember2023-12-310001107843us-gaap:CashEquivalentsMember2023-12-310001107843us-gaap:ShortTermInvestmentsMemberus-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember2023-12-310001107843us-gaap:ShortTermInvestmentsMemberus-gaap:CorporateDebtSecuritiesMember2023-12-310001107843us-gaap:ShortTermInvestmentsMemberus-gaap:USGovernmentAgenciesDebtSecuritiesMember2023-12-310001107843us-gaap:ShortTermInvestmentsMember2023-12-310001107843us-gaap:OtherLongTermInvestmentsMemberus-gaap:CorporateDebtSecuritiesMember2023-12-310001107843us-gaap:OtherLongTermInvestmentsMemberus-gaap:AssetBackedSecuritiesMember2023-12-310001107843us-gaap:OtherLongTermInvestmentsMemberus-gaap:USGovernmentAgenciesDebtSecuritiesMember2023-12-310001107843us-gaap:OtherLongTermInvestmentsMember2023-12-310001107843us-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember2024-09-300001107843us-gaap:CorporateDebtSecuritiesMember2024-09-300001107843us-gaap:USGovernmentAgenciesDebtSecuritiesMember2024-09-300001107843us-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember2023-12-310001107843us-gaap:AssetBackedSecuritiesMember2023-12-310001107843us-gaap:CorporateDebtSecuritiesMember2023-12-310001107843us-gaap:USGovernmentAgenciesDebtSecuritiesMember2023-12-3100011078432018-12-310001107843us-gaap:ForeignExchangeContractMemberus-gaap:CashFlowHedgingMemberus-gaap:DesignatedAsHedgingInstrumentMember2024-09-300001107843us-gaap:ForeignExchangeContractMemberus-gaap:CashFlowHedgingMemberus-gaap:DesignatedAsHedgingInstrumentMember2023-12-310001107843qlys:ForeignExchangeContractsForGBPAndEuroMemberus-gaap:CashFlowHedgingMemberus-gaap:DesignatedAsHedgingInstrumentMember2024-09-300001107843us-gaap:ForeignExchangeContractMemberus-gaap:NondesignatedMember2024-09-300001107843us-gaap:ForeignExchangeContractMemberus-gaap:NondesignatedMember2023-12-310001107843us-gaap:DesignatedAsHedgingInstrumentMember2024-09-300001107843us-gaap:DesignatedAsHedgingInstrumentMember2023-12-310001107843us-gaap:NondesignatedMember2024-09-300001107843us-gaap:NondesignatedMember2023-12-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-12-310001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-12-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2024-01-012024-03-310001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2024-01-012024-03-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2024-03-310001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2024-03-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2024-04-012024-06-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2024-04-012024-06-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2024-06-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2024-06-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2024-07-012024-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2024-07-012024-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2024-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2024-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2022-12-310001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-12-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-01-012023-03-310001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-01-012023-03-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-03-310001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-03-310001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-04-012023-06-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-04-012023-06-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-06-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-06-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-07-012023-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-07-012023-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember2023-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2024-07-012024-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2023-07-012023-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2024-01-012024-09-300001107843us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2023-01-012023-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2024-01-012024-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2023-07-012023-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2023-01-012023-09-300001107843us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2024-07-012024-09-300001107843us-gaap:ComputerEquipmentMember2024-09-300001107843us-gaap:ComputerEquipmentMember2023-12-310001107843us-gaap:ComputerSoftwareIntangibleAssetMember2024-09-300001107843us-gaap:ComputerSoftwareIntangibleAssetMember2023-12-310001107843us-gaap:LeaseholdImprovementsMember2024-09-300001107843us-gaap:LeaseholdImprovementsMember2023-12-310001107843qlys:ScannerAppliancesMember2024-09-300001107843qlys:ScannerAppliancesMember2023-12-310001107843us-gaap:FurnitureAndFixturesMember2024-09-300001107843us-gaap:FurnitureAndFixturesMember2023-12-310001107843qlys:ScannerAppliancesAndOtherComputerEquipmentSubjectToSubscriptionMember2024-09-300001107843qlys:ScannerAppliancesAndOtherComputerEquipmentSubjectToSubscriptionMember2023-12-310001107843qlys:ScannerAppliancesAndOtherComputerEquipmentNotPlacedInServiceMember2024-09-300001107843qlys:ScannerAppliancesAndOtherComputerEquipmentNotPlacedInServiceMember2023-12-3100011078432024-10-012024-09-3000011078432025-01-012024-09-3000011078432026-01-012024-09-3000011078432027-01-012024-09-3000011078432028-01-012024-09-3000011078432029-01-012024-09-300001107843us-gaap:SalesChannelDirectlyToConsumerMember2024-07-012024-09-300001107843us-gaap:SalesChannelDirectlyToConsumerMember2023-07-012023-09-300001107843us-gaap:SalesChannelDirectlyToConsumerMember2024-01-012024-09-300001107843us-gaap:SalesChannelDirectlyToConsumerMember2023-01-012023-09-300001107843us-gaap:SalesChannelThroughIntermediaryMember2024-07-012024-09-300001107843us-gaap:SalesChannelThroughIntermediaryMember2023-07-012023-09-300001107843us-gaap:SalesChannelThroughIntermediaryMember2024-01-012024-09-300001107843us-gaap:SalesChannelThroughIntermediaryMember2023-01-012023-09-300001107843us-gaap:DevelopedTechnologyRightsMember2024-09-300001107843us-gaap:PatentsMember2024-09-300001107843qlys:AssembledWorkforceMember2024-09-300001107843qlys:IntangibleAssetsNotSubjectToAmortizationMember2024-09-300001107843us-gaap:DevelopedTechnologyRightsMember2023-12-310001107843us-gaap:PatentsMember2023-12-310001107843qlys:AssembledWorkforceMember2023-12-310001107843qlys:IntangibleAssetsNotSubjectToAmortizationMember2023-12-310001107843qlys:The2012EquityIncentivePlanMember2022-06-082022-06-080001107843qlys:The2012EquityIncentivePlanMember2024-06-122024-06-120001107843qlys:The2021EmployeeStockPurchasePlanMember2021-06-090001107843qlys:The2021EmployeeStockPurchasePlanMember2021-06-092021-06-090001107843qlys:The2021EmployeeStockPurchasePlanMembersrt:MinimumMember2021-06-092021-06-090001107843qlys:The2021EmployeeStockPurchasePlanMembersrt:MaximumMember2021-06-092021-06-090001107843qlys:The2021EmployeeStockPurchasePlanMember2024-01-012024-09-300001107843qlys:The2021EmployeeStockPurchasePlanMember2024-09-300001107843qlys:The2012EquityIncentivePlanMember2024-01-012024-09-3000011078432023-01-012023-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMembersrt:ExecutiveOfficerMember2024-01-012024-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMembersrt:ExecutiveOfficerMembersrt:MaximumMember2024-01-012024-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMembersrt:ExecutiveOfficerMembersrt:MinimumMember2024-01-012024-09-300001107843us-gaap:RestrictedStockUnitsRSUMember2023-12-310001107843us-gaap:RestrictedStockUnitsRSUMember2024-01-012024-09-300001107843us-gaap:RestrictedStockUnitsRSUMember2024-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer1Member2023-01-012023-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer1Member2021-01-012021-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer1Member2022-01-012022-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer2Member2022-01-012022-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer2Member2021-01-012021-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer2Member2023-01-012023-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer3Member2021-01-012021-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer3Member2022-01-012022-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer3Member2023-01-012023-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer4Member2021-01-012021-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer4Member2022-01-012022-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer4Member2023-01-012023-12-310001107843qlys:PerformanceBasedRestrictedStockUnitsMemberqlys:ExecutiveOfficer4Member2024-01-012024-09-300001107843us-gaap:CostOfSalesMember2024-07-012024-09-300001107843us-gaap:CostOfSalesMember2023-07-012023-09-300001107843us-gaap:CostOfSalesMember2024-01-012024-09-300001107843us-gaap:CostOfSalesMember2023-01-012023-09-300001107843us-gaap:ResearchAndDevelopmentExpenseMember2024-07-012024-09-300001107843us-gaap:ResearchAndDevelopmentExpenseMember2023-07-012023-09-300001107843us-gaap:ResearchAndDevelopmentExpenseMember2024-01-012024-09-300001107843us-gaap:ResearchAndDevelopmentExpenseMember2023-01-012023-09-300001107843us-gaap:SellingAndMarketingExpenseMember2024-07-012024-09-300001107843us-gaap:SellingAndMarketingExpenseMember2023-07-012023-09-300001107843us-gaap:SellingAndMarketingExpenseMember2024-01-012024-09-300001107843us-gaap:SellingAndMarketingExpenseMember2023-01-012023-09-300001107843us-gaap:GeneralAndAdministrativeExpenseMember2024-07-012024-09-300001107843us-gaap:GeneralAndAdministrativeExpenseMember2023-07-012023-09-300001107843us-gaap:GeneralAndAdministrativeExpenseMember2024-01-012024-09-300001107843us-gaap:GeneralAndAdministrativeExpenseMember2023-01-012023-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMember2024-07-012024-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMember2023-07-012023-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMember2024-01-012024-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMember2023-01-012023-09-300001107843us-gaap:EmployeeStockOptionMember2024-09-300001107843qlys:PerformanceBasedRestrictedStockUnitsMember2024-09-300001107843qlys:ESPPSharesMember2024-09-300001107843us-gaap:EmployeeStockOptionMember2024-01-012024-09-300001107843qlys:ESPPSharesMember2024-01-012024-09-3000011078432018-02-1200011078432018-10-3000011078432019-10-3000011078432020-05-0700011078432021-02-1000011078432021-11-0300011078432022-05-0400011078432023-02-0900011078432024-02-070001107843country:US2024-07-012024-09-300001107843country:US2023-07-012023-09-300001107843country:US2024-01-012024-09-300001107843country:US2023-01-012023-09-300001107843us-gaap:NonUsMember2024-07-012024-09-300001107843us-gaap:NonUsMember2023-07-012023-09-300001107843us-gaap:NonUsMember2024-01-012024-09-300001107843us-gaap:NonUsMember2023-01-012023-09-300001107843country:US2024-09-300001107843country:US2023-12-310001107843country:IN2024-09-300001107843country:IN2023-12-310001107843qlys:OtherGeographicAreasMember2024-09-300001107843qlys:OtherGeographicAreasMember2023-12-310001107843us-gaap:EmployeeStockOptionMember2024-07-012024-09-300001107843us-gaap:EmployeeStockOptionMember2023-07-012023-09-300001107843us-gaap:EmployeeStockOptionMember2024-01-012024-09-300001107843us-gaap:EmployeeStockOptionMember2023-01-012023-09-300001107843us-gaap:RestrictedStockUnitsRSUMember2024-07-012024-09-300001107843us-gaap:RestrictedStockUnitsRSUMember2023-07-012023-09-300001107843us-gaap:RestrictedStockUnitsRSUMember2024-01-012024-09-300001107843us-gaap:RestrictedStockUnitsRSUMember2023-01-012023-09-300001107843qlys:EmployeeStockPurchasePlanSharesMember2024-07-012024-09-300001107843qlys:EmployeeStockPurchasePlanSharesMember2023-07-012023-09-300001107843qlys:EmployeeStockPurchasePlanSharesMember2024-01-012024-09-300001107843qlys:EmployeeStockPurchasePlanSharesMember2023-01-012023-09-300001107843qlys:JeffreyP.HankMember2024-01-012024-09-300001107843qlys:OriginalPlanMemberqlys:JeffreyP.HankMember2024-07-012024-09-300001107843qlys:NewPlanMemberqlys:JeffreyP.HankMember2024-07-012024-09-300001107843qlys:JeffreyP.HankMember2024-07-012024-09-300001107843qlys:JeffreyP.HankMember2024-09-300001107843qlys:JooMiKimMember2024-01-012024-09-300001107843qlys:JooMiKimMember2024-07-012024-09-300001107843qlys:JooMiKimMember2024-09-300001107843qlys:BrucePoseyMember2024-01-012024-09-300001107843qlys:BrucePoseyMember2024-07-012024-09-300001107843qlys:BrucePoseyMember2024-09-30
UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549
__________________
FORM 10-Q
__________________
xQuarterly Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934
For the Quarterly Period Ended September 30, 2024
oTransition 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-35662
__________________
QUALYS, INC.
(Exact name of registrant as specified in its charter)
__________________
Delaware77-0534145
(State or other jurisdiction of
incorporation or organization)
(I.R.S. Employer
Identification Number)
919 E. Hillsdale Boulevard, 4th Floor, Foster City, California 94404
(Address of principal executive offices, including zip code)
(650) 801-6100
(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 value per shareQLYSThe NASDAQ Stock Market LLC
Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.    Yes  x    No   o
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  x    No o
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company” and "emerging growth company" in Rule 12b-2 of the Exchange Act.
Large accelerated filer
xAccelerated filero
Non-accelerated fileroSmaller reporting companyo
Emerging growth companyo
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 o    No  x
The number of shares of the registrant's common stock outstanding as of October 24, 2024 was 36,590,452.


Qualys, Inc.
TABLE OF CONTENTS
Page
2

RISK FACTOR SUMMARY
Our business is subject to significant risks and uncertainties that make an investment in us speculative and risky. Below we summarize what we believe are the principal risk factors but these risks are not the only ones we face, and you should carefully review and consider the full discussion of our risk factors in the section titled “Risk Factors,” together with the other information in this Quarterly Report on Form 10-Q. If any of the following risks actually occurs (or if any of those listed elsewhere in this Quarterly Report on Form 10-Q occur), our business, reputation, financial condition, results of operations, revenue, and future prospects could be seriously harmed. Additional risks and uncertainties that we are unaware of, or that we currently believe are not material, may also become important factors that adversely affect our business.

Our quarterly and annual operating results may vary from period to period, which could result in our failure to meet expectations with respect to operating results and cause the trading price of our stock to decline.
If we do not successfully anticipate market needs and opportunities or are unable to enhance our solutions and develop new solutions that meet those needs and opportunities on a timely or cost-effective basis, we may not be able to compete effectively and our business and financial condition may be harmed.
If we fail to continue to effectively scale and adapt our platform to meet the performance and other requirements of our customers, our operating results and our business would be harmed.
If we are unable to renew existing subscriptions for our IT, security and compliance solutions, sell additional subscriptions for our solutions and attract new customers, our operating results would be harmed.
Our current research and development efforts may not produce successful products or enhancements to our platform that result in significant revenue, cost savings or other benefits in the near future.
Our platform, website and internal systems may be subject to intentional disruption or other security incidents that could result in liability and adversely impact our reputation and future sales.
Our sales cycle can be long and unpredictable, and our sales efforts require considerable time and expense. As a result, revenues may vary from period to period, which may cause our operating results to fluctuate and could harm our business.
Adverse economic conditions or reduced IT spending may adversely impact our business.
Our IT, security and compliance solutions are delivered from 14 shared cloud platforms, and any disruption of service at these facilities would interrupt or delay our ability to deliver our solutions to our customers which could reduce our revenues and harm our operating results.
We face competition in our markets, and we may lack sufficient financial or other resources to maintain or improve our competitive position.
If our solutions fail to detect vulnerabilities or incorrectly detect vulnerabilities, our brand and reputation could be harmed, which could have an adverse effect on our business and results of operations.
If we are unable to continue the expansion of our sales force and sales of our solutions, the growth of our business would be harmed.
We rely on third-party channel partners to generate a substantial amount of our revenues, and if we fail to expand and manage our distribution channels, our revenues could decline and our growth prospects could suffer.
A significant portion of our customers, channel partners and employees are located outside of the United States, which subjects us to a number of risks associated with conducting international operations, and if we are unable to successfully manage these risks, our business and operating results could be harmed.
If the market for cloud solutions for IT, security and compliance does not evolve as we anticipate, our revenues may not grow and our operating results would be harmed.
Our business and operations have continued to grow since inception, and if we do not appropriately manage any future growth, or are unable to improve our systems and processes, our operating results may be negatively affected.
A portion of our revenues are generated by sales to government entities, which are subject to a number of challenges and risks.
Undetected software errors or flaws in our solutions could harm our reputation, decrease market acceptance of our solutions or result in liability.
Our solutions could be used to collect and store personal information of our customers’ employees or customers, and therefore privacy and other data handling concerns could result in additional cost and liability to us or inhibit sales of our solutions.
Our solutions contain third-party open source software components, and our failure to comply with the terms of the underlying open source software licenses could restrict our ability to sell our solutions.
We use third-party software and data that may be difficult to replace or cause errors or failures of our solutions that could lead to lost customers or harm to our reputation and our operating results.
Failure to protect our proprietary technology and intellectual property rights could substantially harm our business and operating results.
Assertions by third parties of infringement or other violations by us of their intellectual property rights could result in significant costs and harm our business and operating results.
3

PART I. FINANCIAL INFORMATION
Item 1.                                 Financial Statements
Qualys, Inc.
CONDENSED CONSOLIDATED BALANCE SHEETS
(unaudited)
(in thousands, except per share data)
September 30,
2024
December 31,
2023
Assets
Current assets:
Cash and cash equivalents$235,430 $203,665 
Restricted cash 1,500 
Short-term marketable securities150,913 221,893 
Accounts receivable, net of allowance of $1,154 and $778 as of September 30, 2024 and December 31, 2023, respectively
114,967 146,226 
Prepaid expenses and other current assets35,307 26,714 
Total current assets536,617 599,998 
Long-term marketable securities186,680 56,644 
Property and equipment, net27,343 32,599 
Operating leases - right of use asset41,294 22,391 
Deferred tax assets, net77,730 62,761 
Intangible assets, net7,451 9,715 
Goodwill7,447 7,447 
Noncurrent restricted cash1,200 1,200 
Other noncurrent assets22,561 19,863 
Total assets$908,323 $812,618 
Liabilities and Stockholders’ Equity
Current liabilities:
Accounts payable$1,422 $988 
Accrued liabilities39,960 43,096 
Deferred revenues, current337,821 333,267 
Operating lease liabilities, current9,333 11,857 
Total current liabilities388,536 389,208 
Deferred revenues, noncurrent23,116 31,671 
Operating lease liabilities, noncurrent38,266 16,885 
Other noncurrent liabilities8,810 6,680 
Total liabilities458,728 444,444 
Commitments and contingencies (Note 8)
Stockholders’ equity:
Preferred stock: $0.001 par value; 20,000 shares authorized, no shares issued and outstanding as of September 30, 2024 and December 31, 2023
  
Common stock: $0.001 par value; 1,000,000 shares authorized, 36,640 and 36,909 shares issued and outstanding as of September 30, 2024 and December 31, 2023, respectively
37 37 
Additional paid-in capital642,435 597,921 
Accumulated other comprehensive loss(293)(1,704)
Accumulated deficit(192,584)(228,080)
Total stockholders’ equity449,595 368,174 
Total liabilities and stockholders’ equity$908,323 $812,618 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
4

Qualys, Inc.
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS
(unaudited)
(in thousands, except per share data)
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
Revenues$153,867 $141,996 $448,380 $409,888 
Cost of revenues28,832 26,739 82,445 80,355 
Gross profit125,035 115,257 365,935 329,533 
Operating expenses:
Research and development28,901 27,782 83,550 83,001 
Sales and marketing32,686 27,881 94,240 79,750 
General and administrative18,494 15,999 50,362 45,182 
Total operating expenses80,081 71,662 228,152 207,933 
Income from operations44,954 43,595 137,783 121,600 
Other income (expense), net:
Interest income6,764 5,136 19,590 11,342 
Other income (expense), net605 (708)(1,381)(1,883)
Total other income, net7,369 4,428 18,209 9,459 
Income before income taxes52,323 48,023 155,992 131,059 
Income tax provision6,111 1,508 26,277 20,057 
Net income$46,212 $46,515 $129,715 $111,002 
Net income per share:
Basic$1.26 $1.27 $3.52 $3.01 
Diluted$1.24 $1.24 $3.46 $2.96 
Weighted average shares used in computing net income per share:
Basic36,76236,76636,87736,891
Diluted37,13637,44837,44137,516
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
5

Qualys, Inc.
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME
(unaudited)
(in thousands)
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
Net income$46,212 $46,515 $129,715 $111,002 
Other comprehensive income (loss), net of tax
Net change in unrealized gains on available-for-sale debt securities, net of tax2,256 339 1,628 1,782 
Net change in unrealized gains (losses) on cash flow hedges, net of tax(2,015)510 (217)(702)
Other comprehensive income, net of tax241 849 1,411 1,080 
Comprehensive income$46,453 $47,364 $131,126 $112,082 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
6

Qualys, Inc.
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS
(unaudited)
(in thousands)
Nine Months Ended
September 30,
20242023
Cash flow from operating activities:
Net income$129,715 $111,002 
Adjustments to reconcile net income to net cash provided by operating activities:  
Depreciation and amortization expense14,410 21,140 
Provision for credit losses411 230 
Loss on non-marketable securities 533 
Stock-based compensation, net of amounts capitalized56,454 50,560 
Accretion of discount on marketable securities, net(5,231)(3,502)
Deferred income taxes(15,374)(11,561)
Changes in operating assets and liabilities:  
Accounts receivable30,848 18,137 
Prepaid expenses and other assets(9,900)(4,804)
Accounts payable391 (1,428)
Accrued liabilities and other noncurrent liabilities(1,351)8,211 
Deferred revenues(4,001)22,248 
Net cash provided by operating activities196,372 210,766 
Cash flow from investing activities:
Purchases of marketable securities(305,952)(252,438)
Sales and maturities of marketable securities252,940 212,202 
Purchases of property and equipment(6,497)(7,263)
Net cash used in investing activities(59,509)(47,499)
Cash flow from financing activities:
Repurchase of common stock(97,188)(147,725)
Proceeds from exercise of stock options8,311 28,384 
Payments for taxes related to net share settlement of equity awards(23,093)(14,998)
Proceeds from issuance of common stock through employee stock purchase plan6,872 6,077 
Payment of acquisition-related holdback(1,500) 
Net cash used in financing activities(106,598)(128,262)
Net increase in cash, cash equivalents and restricted cash30,265 35,005 
Cash, cash equivalents and restricted cash at beginning of period206,365 176,419 
Cash, cash equivalents and restricted cash at end of period$236,630 $211,424 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
7

Qualys, Inc.
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY
(unaudited)
(in thousands)
Common Stock
Additional
Paid-In
Capital
Accumulated
Other
Comprehensive
Income (Loss)
Accumulated
Deficit
Total
Stockholders’
Equity
SharesAmount
Balances at December 31, 202336,909$37 $597,921 $(1,704)$(228,080)$368,174 
Net income— — — 39,731 39,731 
Other comprehensive income, net of tax— — 697 — 697 
Issuance of common stock upon exercise of stock options46— 2,770 — — 2,770 
Repurchase of common stock(105)— (627)— (17,402)(18,029)
Issuance of common stock upon vesting of restricted stock units149— — — — — 
Taxes related to net share settlement of equity awards(66)— (11,808)— — (11,808)
Issuance of common stock through employee stock purchase plan29— 3,608 — — 3,608 
Stock-based compensation— 19,059 — — 19,059 
Balances at March 31, 202436,962$37 $610,923 $(1,007)$(205,751)$404,202 
Net income— — — 43,772 43,772 
Other comprehensive income, net of tax— — 473 — 473 
Issuance of common stock upon exercise of stock options61— 3,200 — — 3,200 
Repurchase of common stock(233)— (1,395)— (33,668)(35,063)
Issuance of common stock upon vesting of restricted stock units91— — — — — 
Taxes related to net share settlement of equity awards(35)— (5,903)— — (5,903)
Stock-based compensation— 17,114 — — 17,114 
Balances at June 30, 202436,846$37 $623,939 $(534)$(195,647)$427,795 
Net income— — — 46,212 46,212 
Other comprehensive income, net of tax— — 241 — 241 
Issuance of common stock upon exercise of stock options54— 2,341 — — 2,341 
Repurchase of common stock(344)— (2,064)— (43,149)(45,213)
Issuance of common stock upon vesting of restricted stock units91— — — — — 
Taxes related to net share settlement of equity awards(38)— (5,382)— — (5,382)
Issuance of common stock through employee stock purchase plan31— 3,264 — — 3,264 
Stock-based compensation— 20,337 — — 20,337 
Balances at September 30, 202436,640$37 $642,435 $(293)$(192,584)$449,595 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
Common Stock
Additional
Paid-In
Capital
Accumulated
Other
Comprehensive
Income (Loss)
Accumulated
Deficit
Total
Stockholders’
Equity
SharesAmount
Balances at December 31, 202237,362$37 $512,486 $(1,947)$(221,447)$289,129 
Net income— — — 29,105 29,105 
Other comprehensive income, net of tax— — 376 — 376 
Issuance of common stock upon exercise of stock options61— 2,328 — — 2,328 
Repurchase of common stock(584)— (7,014)— (60,018)(67,032)
Issuance of common stock upon vesting of restricted stock units108— — — — — 
Taxes related to net share settlement of equity awards(43)— (5,105)— — (5,105)
Issuance of common stock through employee stock purchase plan29— 2,988 — — 2,988 
Stock-based compensation— 16,033 — — 16,033 
Balances at March 31, 202336,933$37 $521,716 $(1,571)$(252,360)$267,822 
Net income— — — 35,382 35,382 
Other comprehensive loss, net of tax— — (145)— (145)
Issuance of common stock upon exercise of stock options101— 4,820 — — 4,820 
Repurchase of common stock(346)— (4,157)— (38,335)(42,492)
Issuance of common stock upon vesting of restricted stock units96— — — — — 
Taxes related to net share settlement of equity awards(38)— (4,389)— — (4,389)
Stock-based compensation— 16,020 — — 16,020 
Balances at June 30, 202336,746$37 $534,010 $(1,716)$(255,313)$277,018 
Net income— — — 46,515 46,515 
Other comprehensive income, net of tax— — 849 — 849 
Issuance of common stock upon exercise of stock options239— 21,236 — — 21,236 
Repurchase of common stock(273) (3,279)— (35,543)(38,822)
Issuance of common stock upon vesting of restricted stock units92— — — — — 
Taxes related to net share settlement of equity awards(39)— (5,504)— — (5,504)
Issuance of common stock through employee stock purchase plan31— 3,089 — — 3,089 
Stock-based compensation— 18,536 — — 18,536 
Balances at September 30, 202336,796$37 $568,088 $(867)$(244,341)$322,917 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
8

Qualys, Inc.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS
(unaudited)
NOTE 1.                              Description of Business and Summary of Significant Accounting Policies
Description of Business
Qualys, Inc. (the “Company”, "we", "us", "our") was incorporated in the state of Delaware on December 30, 1999. The Company is headquartered in Foster City, California and has wholly-owned subsidiaries throughout the world. The Company is a leading provider of cloud-based information technology ("IT"), security and compliance solutions that enable organizations to identify security risks to their IT infrastructures, help protect their IT systems and applications from ever-evolving cyber-attacks and achieve compliance with internal policies and external regulations. The Company’s cloud solutions address the growing security and compliance complexities and risks that are amplified by the dissolving boundaries between internal and external IT infrastructures and web environments, the rapid adoption of cloud computing and the proliferation of geographically dispersed IT assets. Organizations can use the Company’s integrated suite of solutions delivered on Qualys' Enterprise TruRisk Platform to cost-effectively obtain a unified view of their security and compliance posture across globally-distributed IT infrastructures.
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements and condensed footnotes have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP") for interim financial information as well as the instructions to Form 10-Q and the rules and regulations of the U.S. Securities and Exchange Commission ("SEC"). Certain information and disclosures normally included in the financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The condensed consolidated balance sheet as of December 31, 2023, included herein, was derived from the audited financial statements as of that date but does not include all disclosures, including notes required by U.S. GAAP. In the opinion of management, the accompanying unaudited condensed consolidated financial statements reflect all adjustments, which include only normal recurring adjustments, necessary for the fair statement of the financial position, results of operations and cash flows for the interim periods. The results of operations for the three and nine months ended September 30, 2024 are not necessarily indicative of the results of operations expected for the entire year ending December 31, 2024 or for any other future annual or interim periods. These condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 filed with the SEC on February 22, 2024.
Use of Estimates
The preparation of the unaudited condensed consolidated financial statements in conformity with U.S. GAAP requires management to make certain estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of assets and liabilities at the date of the condensed consolidated financial statements and the reported results of operations during the reporting period. The Company’s management regularly assesses these estimates, which primarily affect revenue recognition, allowance for credit loss, the valuation of goodwill and intangible assets, leases, stock-based compensation and income tax provision. Actual results could differ from those estimates and such differences may be material to the accompanying unaudited condensed consolidated financial statements.
Recently Adopted Accounting Pronouncements
None.
9

Recently Issued Accounting Pronouncements Not Yet Adopted
In November 2023, the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2023-07 requiring enhanced segment disclosures. The ASU requires disclosure of significant segment expenses regularly provided to the chief operating decision maker ("CODM") included within segment operating profit or loss. Additionally, the ASU requires a description of how the CODM utilizes segment operating profit or loss to assess segment performance. The requirements of the ASU are effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company's annual reporting requirements will be effective for fiscal 2024 and interim reporting requirements will be effective beginning with the first quarter of fiscal 2025. Early adoption is permitted and retrospective application is required for all periods presented. The Company is in the process of analyzing the impact of the ASU on related disclosures.
In December 2023, the FASB issued ASU 2023-09 requiring improvements to income tax disclosures. The new ASU requires disclosure of disaggregated information about the effective tax rate and income taxes paid. The requirements of the ASU are effective for annual periods beginning after December 15, 2024 and are to be applied on a prospective basis. The Company's annual reporting requirements will be effective for fiscal year 2025. Companies can choose to early adopt and apply the guidance retrospectively. The Company is in the process of analyzing the impact of the ASU on related disclosures.
There have been no material changes to the Company’s significant accounting policies set forth in "Note 1" of Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023.
NOTE 2.                              Fair Value of Financial Instruments
Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. For certain of the Company’s financial instruments, including certain cash equivalents, accounts receivable, accounts payable and accrued liabilities, the carrying amounts approximate their fair values due to the relatively short maturity of these balances.
The Company measures and reports certain cash equivalents, marketable securities, derivative foreign currency forward contracts at fair value in accordance with the provisions of the authoritative accounting guidance that addresses fair value measurements. This guidance establishes a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that the most observable inputs be used when available. The hierarchy is broken down into three levels based on the reliability of inputs as follows:
Level 1 - Valuations based on quoted prices in active markets for identical assets or liabilities.
Level 2 - Valuations based on other than quoted prices in active markets for identical assets and liabilities, including quoted prices for identical assets or liabilities in less active or inactive markets, quoted prices for similar assets or liabilities in active markets, or inputs other than quoted prices that are observable for substantially the full term of the assets or liabilities.
Level 3 - Valuations based on inputs that are generally unobservable and typically reflect management’s estimates of assumptions that market participants would use in pricing the asset or liability.
The Company's financial instruments consist of assets and liabilities measured using Level 1 and 2 inputs. Level 1 assets include a highly liquid money market fund, which is valued using unadjusted quoted prices that are available in an active market for an identical asset. Level 2 assets include fixed-income U.S. Treasury and government agency securities, commercial paper, corporate bonds, asset-backed securities and derivative financial instruments consisting of foreign currency forward contracts. The securities, bonds and commercial paper are valued using prices from independent pricing services based on quoted prices of identical instruments in less active or inactive markets, quoted prices of similar instruments in active markets, or industry models using data inputs such as interest rates and prices that can be directly observed or corroborated in active markets. The foreign currency forward contracts are valued using observable inputs, such as quotations on forward foreign exchange points and foreign interest rates.
10

The following table sets forth by level within the fair value hierarchy the fair value of the Company's financial assets and liabilities measured at fair value on a recurring basis:
September 30, 2024
Level 1Level 2Fair Value
(in thousands)
Money market funds$2,172 $ $2,172 
Commercial paper 14,383 14,383 
U.S. Treasury and government agencies 231,248 231,248 
Corporate bonds 121,371 121,371 
Asset-backed securities 8,838 8,838 
Foreign currency forward contracts 19 19 
Total assets$2,172 $375,859 $378,031 
Foreign currency forward contracts$ $2,569 $2,569 
Total liabilities$ $2,569 $2,569 
December 31, 2023
Level 1Level 2Fair Value
(in thousands)
Money market funds$87 $ $87 
Commercial paper 54,279 54,279 
U.S. Treasury and government agencies 208,536 208,536 
Corporate bonds 56,465 56,465 
Asset-backed securities 13,881 13,881 
Foreign currency forward contracts 111 111 
Total assets$87 $333,272 $333,359 
Foreign currency forward contracts$ $1,986 $1,986 
Total liabilities$ $1,986 $1,986 
There were no transfers between Level 1, Level 2 and Level 3 categories during the three and nine months ended September 30, 2024 and 2023.
11

Cash equivalent and investments
The Company's cash equivalents and marketable securities consist of the following:
September 30, 2024
Amortized CostUnrealized GainsUnrealized LossesFair Value
(in thousands)
Cash equivalents: (1)
Money market funds$2,172 $ $ $2,172 
Commercial paper1,000   1,000 
U.S. Treasury and government agencies37,247 1 (1)37,247 
Total40,419 1 (1)40,419 
Short-term marketable securities:    
Commercial paper13,376 8 (1)13,383 
Corporate bonds38,697 148 (9)38,836 
U.S. Treasury and government agencies98,450 252 (8)98,694 
Total150,523 408 (18)150,913 
Long-term marketable securities:
Corporate bonds81,514 1,026 (5)82,535 
Asset-backed securities8,725 113  8,838 
U.S. Treasury and government agencies94,556 759 (8)95,307 
Total184,795 1,898 (13)186,680 
Total$375,737 $2,307 $(32)$378,012 
(1)Excludes cash of $195.0 million.
December 31, 2023
Amortized CostUnrealized GainsUnrealized LossesFair Value
(in thousands)
Cash equivalents: (2)
Money market funds$87 $ $ $87 
U.S. Treasury and government agencies54,620 4  54,624 
Total54,707 4  54,711 
Short-term marketable securities:
Commercial paper54,254 32 (7)54,279 
Corporate bonds23,013 1 (149)22,865 
U.S. Treasury and government agencies144,901 52 (204)144,749 
Total222,168 85 (360)221,893 
Long-term marketable securities:
Corporate bonds33,337 285 (22)33,600 
Asset-backed securities13,785 102 (6)13,881 
U.S. Treasury and government agencies9,116 49 (2)9,163 
Total56,238 436 (30)56,644 
Total$333,113 $525 $(390)$333,248 
(2)Excludes cash of $149.0 million.
12

The following table summarizes the gross unrealized losses and fair value of the Company's marketable securities that were in an unrealized loss position aggregated by length of time:
September 30, 2024
Less than 12 months12 months or longerTotal
Fair ValueGross Unrealized LossesFair ValueGross Unrealized LossesFair ValueGross Unrealized Losses
(in thousands)
Commercial paper$7,968 $(1)$ $ $7,968 $(1)
Corporate bonds10,730 (7)668 (7)11,398 (14)
U.S. Treasury and government agencies29,689 (17)  29,689 (17)
Total$48,387 $(25)$668 $(7)$49,055 $(32)
December 31, 2023
Less than 12 months12 months or longerTotal
Fair ValueGross Unrealized LossesFair ValueGross Unrealized LossesFair ValueGross Unrealized Losses
(in thousands)
Commercial paper$24,838 $(7)$ $ $24,838 $(7)
Asset-backed securities  1,485 (6)1,485 (6)
Corporate bonds  20,717 (171)20,717 (171)
U.S. Treasury and government agencies43,373 (18)18,172 (188)61,545 (206)
Total$68,211 $(25)$40,374 $(365)$108,585 $(390)
The Company considered the extent to which any unrealized losses on its marketable securities were driven by credit risk and other factors, including market risk, and if it is more-likely-than-not that the Company would have to sell the security before the recovery of the amortized cost basis. At September 30, 2024 and December 31, 2023, the unrealized losses related to its marketable securities were due to higher market interest rates compared to when the investments were initiated. The Company does not believe the unrealized losses represent credit risk, and the Company does not intend to sell any of the securities in an unrealized loss position and it is not likely that the Company would be required to sell these securities before recovery of their amortized cost basis, which may be at maturity. Thus, no credit loss was recognized for the Company's marketable securities for the three and nine months ended September 30, 2024 and 2023.
The following summarizes the fair value of marketable securities by contractual maturity:
September 30, 2024
Amortized CostFair Value
(in thousands)
Due within One Year$190,942 $191,332 
Due after One Year through Five Years176,070 177,842 
Asset-backed securities8,725 8,838 
Total$375,737 $378,012 
13

Non-Marketable Securities
During the fiscal year ended December 31, 2018, the Company invested $2.5 million in preferred stock of a privately-held company. The fair value of the investment is not readily available, and there are no quoted market prices for the investment. The Company accounts for the investment at cost less impairment and will measure the investment at fair value when the Company identifies observable price changes. The investment is assessed for impairment whenever events or changes in circumstances indicate that the fair value of the investment is less than carrying value. During the second quarter of 2023, the Company identified an observable price change in the investment and recognized an immaterial unrealized loss in other income (expense), net of the condensed consolidated statement of operations. The investment is included in other noncurrent assets on the condensed consolidated balance sheets. The Company has not received any dividends from the investment.
Derivative Financial Instruments
Designated cash flow hedges
The Company enters into foreign currency forward contracts to reduce the risk of variability in future cash flow due to foreign currency exchange rate fluctuation from certain forecasted subscription revenue orders billed in British Pound ("GBP") and Euro ("EUR") and operating expenses incurred in Indian Rupee ("INR"), which are designated as cash flow hedges. Hedge effectiveness is assessed at inception and at each reporting period utilizing regression analysis. Unrealized foreign exchange gains or losses related to those designated cash flow hedge contracts are recorded in accumulated other comprehensive income ("AOCI") and will be reclassified into revenues or operating expenses, respectively, in the same periods when the hedged transactions are recognized in earnings.
As of September 30, 2024, the Company had designated cash flow hedge forward contracts with notional amounts of €46.4 million, £18.0 million and Rs.4,273.0 million. As of December 31, 2023, the Company had designated cash flow hedge forward contracts with notional amounts of €48.5 million, £14.6 million and Rs.4,042.0 million.
As of September 30, 2024, the amount of net unrealized loss of $1.5 million before tax on the foreign currency forward contracts for GBP and EUR reported in AOCI is expected to be reclassified into revenue within the next 12 months. As of September 30, 2024, an immaterial amount of net unrealized loss before tax on the foreign currency forward contracts for INR reported in AOCI is expected to be reclassified into operating expenses within the next 12 months.
Non-designated forward contracts
The Company also uses foreign currency forward contracts to hedge certain foreign currency denominated assets or liabilities, which are not designated as cash flow hedges. Unrealized foreign exchange gain or losses related to the non-designated forward contracts are recorded in other income (expenses), net and offset the foreign exchange gain or loss on the underlying net monetary assets or liabilities.
As of September 30, 2024, the Company had non-designated forward contracts with notional amounts of €12.5 million, £5.1 million, Rs.1,208.0 million, and Canadian Dollar ("C$" or "CAD") 1.2 million. As of December 31, 2023, the Company had non-designated forward contracts with notional amounts of €19.2 million, £6.0 million, Rs.440.0 million, and C$1.0 million.
14

The following summarizes the fair value of derivative financial instruments as of September 30, 2024 and December 31, 2023:
September 30,
2024
December 31,
2023
(in thousands)
Assets
Foreign currency forward contracts designated as cash flow hedge$ $63 
Foreign currency forward contracts not designated as hedging instruments19 48 
Total$19 $111 
Liabilities
Foreign currency forward contracts designated as cash flow hedge$2,474 $1,502 
Foreign currency forward contracts not designated as hedging instruments95 484 
Total$2,569 $1,986 
The Company presents its derivative assets and derivative liabilities at gross fair values in the condensed consolidated balance sheets. However, under the master netting agreements with the respective counterparties of the foreign exchange contracts, subject to applicable requirements, the Company is allowed to net settle transactions of the same currency with a single net amount payable by one party to the other. The potential offset to both assets and liabilities under the right of set-off associated with the Company's foreign currency exchange contracts are immaterial as of September 30, 2024 and December 31, 2023. The derivatives held by the Company are not subject to any credit contingent features negotiated with its counterparties. The Company is not required to pledge nor is entitled to receive cash collateral related to the above contracts. The counterparties to these derivatives are large, global financial institutions that the Company believes are creditworthy, and therefore, it does not consider the risk of counterparty nonperformance to be material.
The following summarizes the gains (losses) recognized from forward contracts and other foreign currency transactions in other income (expense), net in the condensed consolidated statements of operations:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Net gains (losses) from non-designated forward contracts$(896)$540 $(457)$690 
Other foreign currency transactions gains (losses)1,501 (1,248)(958)(1,979)
Total foreign exchange gains (losses), net$605 $(708)$(1,415)$(1,289)
15

NOTE 3.                              Accumulated Other Comprehensive Income (Loss)
The components and changes in accumulated other comprehensive income (loss) for the three and nine months ended September 30, 2024 and 2023 were as follows:
Available-for-Sale Debt SecuritiesCash Flow HedgesTotal
(in thousands)
Balances at December 31, 2023$108 $(1,812)$(1,704)
Change in unrealized gains (losses) during the period(436)1,222 786 
Amount reclassified into income during the period 218 218 
Tax effect29 (336)(307)
Net change during the period(407)1,104 697 
Balances at March 31, 2024$(299)$(708)$(1,007)
Change in unrealized gains (losses) during the period(221)465 244 
Amount reclassified into income during the period 414 414 
Tax effect (185)(185)
Net change during the period(221)694 473 
Balances at June 30, 2024$(520)$(14)$(534)
Change in unrealized gains (losses) during the period2,796 (3,065)(269)
Amount reclassified into income during the period 423 423 
Tax effect(540)627 87 
Net change during the period2,256 (2,015)241 
Balances at September 30, 2024$1,736 $(2,029)$(293)
Balances at December 31, 2022$(2,705)$758 $(1,947)
Change in unrealized gains (losses) during the period1,131 (443)688 
Amount reclassified into income during the period (534)(534)
Tax effect 222 222 
Net change during the period1,131 (755)376 
Balances at March 31, 2023$(1,574)$3 $(1,571)
Change in unrealized gains (losses) during the period312 65 377 
Amount reclassified into income during the period (665)(665)
Tax effect 143 143 
Net change during the period312 (457)(145)
Balances at June 30, 2023$(1,262)$(454)$(1,716)
Change in unrealized gains (losses) during the period339 1,249 1,588 
Amount reclassified into income during the period (580)(580)
Tax effect (159)(159)
Net change during the period339 510 849 
Balances at September 30, 2023$(923)$56 $(867)
16

The effects on income before income taxes of amounts reclassified from AOCI to the condensed consolidated statements of operations were as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Reclassification of AOCI - Cash flow hedges
Revenues$(320)$721 $(974)$2,918 
Cost of revenues(25)(32)(19)(262)
Research and development(64)(89)(51)(724)
Sales and marketing(6)(6)(5)(45)
General and administrative(8)(14)(6)(108)
Total$(423)$580 $(1,055)$1,779 
There was no reclassification of AOCI to other income (expense), net related to Available-for-sale debt securities during the three and nine months ended September 30, 2024 and 2023.
NOTE 4.                              Property and Equipment, Net
Property and equipment, net, consists of the following:
September 30,
2024
December 31,
2023
(in thousands)
Computer equipment$182,926 $179,002 
Computer software26,157 26,133 
Leasehold improvements21,894 20,924 
Scanner appliances18,661 18,369 
Furniture, fixtures and equipment5,087 6,699 
Total property and equipment254,725 251,127 
Less: accumulated depreciation and amortization(227,382)(218,528)
Property and equipment, net$27,343 $32,599 
As of September 30, 2024 and December 31, 2023, physical scanner appliances and other computer equipment that are or will be subject to leases by customers had a net carrying value of $9.4 million and $10.1 million, respectively, including assets that had not been placed in service of $5.8 million and $6.4 million, respectively.
Depreciation and amortization expenses relating to property and equipment were $3.6 million and $5.8 million for the three months ended September 30, 2024 and 2023, respectively, and $12.1 million and $18.4 million for the nine months ended September 30, 2024 and 2023, respectively, which were mainly recorded in cost of revenues in the condensed consolidated statements of operations.
NOTE 5.                              Revenue from Contracts with Customers
The Company records deferred revenue when cash payments are received or due in advance of its performance obligations offset by revenue recognized in the period. Revenues of $66.8 million and $57.2 million were recognized during the three months ended September 30, 2024 and 2023, respectively, and $296.5 million and $257.4 million were recognized during the nine months ended September 30, 2024 and 2023, respectively, which amounts were included in the deferred revenue balances of $364.9 million and $317.2 million as of December 31, 2023 and 2022, respectively.
17

The Company's payment terms vary by the type and location of its customers. The term between invoicing and when payment is due is not significant. In certain circumstances, based on the credit quality of the customer, the Company requires payment before the products or services are delivered to the customer.
The following table sets forth the expected revenue from all remaining performance obligations as of September 30, 2024:
(in thousands)
2024 (remaining three months)$63,367 
2025193,560 
2026100,797 
202724,172 
20281,018 
2029 and thereafter387 
Total$383,301 
Revenues allocated to remaining performance obligations represents the transaction price of noncancelable orders for which service has not been performed, which include deferred revenue and the amounts that will be invoiced and recognized as revenues in future periods from open contracts and excludes unexercised renewals. The Company applied the short-term contract exemption to exclude the remaining performance obligations that are part of a contract that has an original expected duration of one year or less.
From time to time, the Company enters into contracts with customers that extend beyond one year, with certain of its customers electing to pay for more than one year of services upon contract execution. The Company concluded that these contracts did not contain a financing component.
Revenues by sales channel are as follows:
Three Months EndedNine Months Ended
September 30,September 30,
2024202320242023
(in thousands)(in thousands)
Direct$81,636 $80,499 $242,065 $234,410 
Partner72,231 61,497 206,315 175,478 
Total$153,867 $141,996 $448,380 $409,888 
The Company utilizes partners to enable and accelerate the adoption of its cloud platform by increasing its distribution capabilities and market awareness of its cloud platform as well as by targeting geographic regions outside the reach of its direct sales force. The Company's channel partners maintain relationships with their customers throughout the territories in which they operate and provide their customers with services and third-party solutions to help meet those customers’ evolving security and compliance requirements. As such, these partners may offer the Company's IT security and compliance solutions in conjunction with one or more of their own products or services and act as a conduit through which the Company can connect with these prospective customers to offer its solutions. For sales involving a channel partner, the channel partner engages with the prospective customer directly and involves the Company's sales team as needed to assist in developing and closing an order. When a channel partner secures a sale, the Company sells the associated subscription to the channel partner who in turn resells the subscription to the customer. Sales to channel partners are made at a discount and revenues are recorded at this discounted price over the subscription terms. The Company does not have any influence or specific knowledge of its partners' selling terms with their customers. See Note 11, "Segment and Geographic Area Information" for disaggregation of revenue by geographic area.
18

Deferred costs to obtain contracts are as follows:
September 30,
2024
December 31,
2023
(in thousands)
Current$6,796 $5,858 
Noncurrent$14,041 $11,844 
For the three months ended September 30, 2024 and 2023, the Company recognized $1.8 million and $1.5 million, respectively, of amortization expense relating to deferred costs to obtain contracts in sales and marketing expense in the condensed consolidated statements of operations. For the nine months ended September 30, 2024 and 2023, the Company recognized $5.2 million and $4.4 million, respectively, of amortization expense relating to deferred costs to obtain contracts in sales and marketing expense in the condensed consolidated statements of operations. During the same periods, there was no impairment loss related to the deferred costs to obtain contracts.
As of December 31, 2022, the net carrying value of the Company’s accounts receivable, current deferred revenues, and noncurrent deferred revenues were $121.8 million, $293.7 million and $23.5 million, respectively.
NOTE 6.                              Intangible Assets, Net
Intangible assets consist primarily of developed technology and patent licenses acquired from business or asset acquisitions. Acquired intangibles are amortized on a straight-line basis over the respective estimated useful lives of the assets.
The carrying values of intangible assets are as follows:
September 30, 2024
(in thousands)Weighted Average Life (Years)CostAccumulated AmortizationNet Book Value
Developed technology4.6$40,141 $(32,730)$7,411 
Patent licenses14.01,387 (1,387) 
Assembled workforce2.0359 (359) 
Total intangibles subject to amortization$41,887 $(34,476)$7,411 
Intangible assets not subject to amortization40 
Total intangible assets, net$7,451 
 December 31, 2023
(in thousands)Weighted Average Life (Years)CostAccumulated AmortizationNet Book Value
Developed technology4.6$40,141 $(30,667)$9,474 
Patent licenses14.01,387 (1,322)65 
Assembled workforce2.0359 (223)136 
Total intangibles subject to amortization$41,887 $(32,212)$9,675 
Intangible assets not subject to amortization40 
Total intangible assets, net$9,715 

19

Intangible asset amortization expense was $0.7 million and $0.8 million for the three months ended September 30, 2024 and 2023, respectively, and $2.3 million and $2.3 million for the nine months ended September 30, 2024 and 2023, respectively. Intangible asset amortization expenses were primarily recorded in cost of revenues in the condensed consolidated statements of operations.
As of September 30, 2024, the Company expects amortization expense in future periods to be as follows:
(in thousands)
2024 (remaining three months)$640 
20252,556 
20262,477 
20271,738 
Total expected future amortization expense$7,411 
NOTE 7.                              Leases
The Company leases certain offices, computer equipment and its shared cloud platform facilities under non-cancelable operating leases for varying periods through 2030. While under the Company's lease agreements the Company has options to extend its certain leases, the Company has not included renewal options in determining the lease terms for calculating its lease liabilities, as these options are not reasonably certain of being exercised. Lease expense was $4.5 million and $3.9 million for the three months ended September 30, 2024 and 2023, respectively, and $12.1 million and $12.1 million for the nine months ended September 30, 2024 and 2023, respectively.
Supplemental cash flow information related to operating leases was as follows:
Nine Months Ended
September 30,
20242023
(in thousands)
Cash payments included in the measurement of lease liabilities$10,665 $11,350 
Lease liabilities arising from obtaining right-of-use assets$28,157 $121 
The weighted average remaining lease term and the weighted average discount rate of the Company's operating leases were as follows:
September 30,
2024
December 31,
2023
Weighted average remaining lease term (years)4.43.1
Weighted average discount rate7.4 %5.2 %
20

Maturities of the Company's operating lease liabilities as of September 30, 2024 are as follows:
(in thousands)
2024 (remaining three months)$2,865 
202512,593 
202612,194 
202712,249 
20289,473 
2029 and thereafter7,377 
Total minimum lease payments56,751 
Less: interest(9,152)
Present value of net minimum lease payments$47,599 
NOTE 8.                              Commitments and Contingencies
Indemnifications
The Company from time to time enters into certain types of contracts that contingently require it to indemnify various parties against claims from third parties. These contracts primarily relate to (i) the Company's bylaws, under which it must indemnify directors and executive officers, and may indemnify other officers and employees, for liabilities arising out of their relationship, (ii) contracts under which the Company must indemnify directors and certain officers for liabilities arising out of their relationship, and (iii) contracts under which the Company may be required to indemnify customers or resellers from certain liabilities arising from potential infringement of intellectual property rights, as well as potential damages caused by limited product defects. To date, the Company has not incurred and has not recorded any liability in connection with such indemnifications.
The Company maintains director and officer insurance, which may cover certain liabilities arising from its obligation to indemnify its directors.
NOTE 9.                              Stockholders' Equity and Stock-based Compensation
Equity Incentive Plans
Restated 2012 Equity Incentive Plan
On June 8, 2022 ("Effective Date"), the Company's stockholders approved the Amended and Restated 2012 Equity Incentive Plan (the "Restated 2012 Plan"). Under the Restated 2012 Plan, the Company is authorized to grant to eligible participants incentive stock options, nonstatutory stock options, restricted stock, restricted stock units ("RSUs"), stock appreciation rights, performance units and performance shares. Pursuant to the relevant plan provisions, 3,072 thousand shares were available for grant under the Restated 2012 Plan on the Effective Date. In addition, any outstanding awards or options granted under the previous version of the 2012 Equity Incentive Plan (“Previous 2012 Plan”) will be added back to the shares available for grant under the Restated 2012 Plan if they expire unexercised or are otherwise forfeited after the Effective Date. Any remaining shares available for grant under the Previous 2012 Plan as of the Effective Date were no longer available for future grants under the Restated 2012 Plan.
On June 12, 2024, the Company's stockholders approved an amendment and restatement to the Restated 2012 Plan to increase the number of shares of the Company's common stock reserved for issuance by 1,092 thousand shares.
As of September 30, 2024, 2,562 thousand shares were available for grant under the Restated 2012 Plan.

21

2021 Employee Stock Purchase Plan
On June 9, 2021, the Company’s stockholders approved the 2021 Employee Stock Purchase Plan (the “ESPP”). A total of 600 thousand shares were authorized for issuance to eligible participating employees upon adoption of the ESPP. The ESPP provides for consecutive 6-month offering periods beginning on or about August 16 and February 16 of each year. Eligible employees who elect to participate can contribute from 1% to 15% of their eligible compensation through payroll withholding. During any offering period, contribution rates cannot be changed. However, eligible employees may withdraw from the current offering period. Any contributions made prior to each purchase date in the case of withdrawal or termination of employment will be refunded. On each purchase date, eligible participating employees will purchase the shares at a price per share equal to 85% of the lesser of (i) the fair market value of the Company's stock on the first trading day of the offering period or (ii) the fair market value of the Company's stock on the purchase date (i.e., the last trading day of the offering period).
During the nine months ended September 30, 2024, 59 thousand shares were issued in connection with the purchase of common stock by participating employees. As of September 30, 2024, 435 thousand shares were available for future purchases.
Stock Options
Stock options granted under the Restated 2012 Plan and Previous 2012 Plan (collectively, the "Plans") generally vest based on continued service over four years and expire ten years from the date of grant.
A summary of the Company’s stock option activity during the nine months ended September 30, 2024 is as follows:
Outstanding OptionsWeighted Average Exercise
Price
Weighted Average Remaining
Contractual Life
Aggregate Intrinsic Value
(in thousands)(Years)(in thousands)
Balance as of December 31, 20231,447$97.98 6.5$142,302 
Granted194$161.93 
Exercised(161)$51.48 
Canceled(72)$130.47 
Balance as of September 30, 20241,408$110.47 6.5$35,988 
Vested and expected to vest as of September 30, 20241,268$106.81 6.3$35,653 
Exercisable as of September 30, 2024809$88.39 5.0$34,100 
Restricted Stock Units
RSUs granted under the Plans generally only contain a service-based vesting condition that is typically satisfied over four years.
Performance-based Restricted Stock Units ("PRSUs") granted under the Plans contain both service-based and performance-based vesting conditions. In February 2024, the Company granted PRSUs to its executive officers and certain other members of its senior leadership team. The performance-based vesting condition is satisfied upon the achievement of certain Company annual performance targets, including revenue growth and adjusted EBITDA margin, set by the Compensation and Talent Committee of the board of directors of the Company. The target PRSUs are scheduled to vest in three equal annual installments over a three-year period. Each annual installments at 200% of the annual target will be considered granted when the performance targets for the corresponding performance year is determined and approved. The actual number of the PRSUs earned and eligible to vest ranges from 0% to 200% of the annual target number of PRSUs granted based on the weighted-average achievement of such Company annual performance metrics set for the corresponding annual performance period. The vesting and release of the first and second installment is capped at 100% of the target number at the end of the first and second year, respectively, with cumulative achievement over 100%, if any, to be vested and released at the end of the third year, together with the vesting of the third installment. For PRSUs granted
22

under the Plans, any unvested PRSU award may be accelerated in part or in full upon the occurrence of certain events, such as death or disability, or a change in control, as defined in the grant agreement.
A summary of the Company’s RSU activity, inclusive of PRSU activity, during the nine months ended September 30, 2024 is as follows:
Outstanding RSUsWeighted Average Grant Date Fair Value
Per Share
(in thousands)
Balance as of December 31, 20231,074(1)$133.60 
Granted410(2)$159.26 
Vested(332)(3)$127.84 
Forfeited(178)(4)$139.68 
Balance as of September 30, 2024974(5)$145.25 
Outstanding and expected to vest as of September 30, 2024733$142.66 
(1)Included 139 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(2)Included 156 thousand PRSUs granted to certain executive officers in the nine months ended September 30, 2024.
(3)Included 64 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(4)Included 70 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(5)Included 161 thousand PRSUs granted to certain executive officers in 2024, 2023, 2022 and 2021.
Stock-based Compensation
The following table shows a summary of the stock-based compensation expense included in the condensed consolidated statements of operations:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Cost of revenues$2,081 $1,946 $5,967 $5,255 
Research and development5,448 5,671 15,911 15,734 
Sales and marketing3,649 3,229 11,020 8,580 
General and administrative9,159 7,676 23,556 20,991 
Total stock-based compensation, net of amounts capitalized (1)$20,337 $18,522 $56,454 $50,560 
(1)Total stock-based compensation expense capitalized was de minimis during the three and nine months ended September 30, 2024.
Of the total stock-based compensation expense in the table above, the Company recognized stock-based compensation expenses related to all PRSUs of $3.9 million and $2.7 million during the three months ended September 30, 2024 and 2023, respectively, and $8.0 million and $5.2 million for the nine months ended September 30, 2024 and 2023, respectively.
As of September 30, 2024, the Company had unrecognized stock-based compensation expenses of $21.6 million, $80.2 million, $3.9 million, and $1.0 million related to options, RSUs, PRSUs, and ESPP purchase rights, respectively, which are expected to be recognized over weighted-average periods of 2.4 years, 2.6 years, 0.3 years, and 0.4 years, respectively.
23

Share Repurchase Program
The Company's share repurchase program was authorized by the board of directors as follows:
Announcement DateAuthorized Dollar Value
(in millions)
February 12, 2018$100.0 
October 30, 2018100.0 
October 30, 2019100.0 
May 7, 2020100.0 
February 10, 2021100.0 
November 3, 2021200.0 
May 4, 2022200.0 
February 9, 2023100.0 
February 7, 2024200.0 
Total as of September 30, 2024$1,200.0 
Shares may be repurchased from time to time on the open market in accordance with Rule 10b-18 of the Exchange Act of 1934, including pursuant to a pre-set trading plan adopted in accordance with Rule 10b5-1 under the Exchange Act. All share repurchases have been made using cash resources. Repurchased shares are retired and reclassified as authorized and unissued shares of common stock. On retirement of the repurchased shares, common stock is reduced by an amount equal to the number of shares being retired multiplied by the par value. The excess amount that is retired over its par value is first allocated as a reduction to additional paid-in capital based on the original cost of additional paid-in capital per share of identified issuances. The remaining amount is allocated to accumulated deficit.
During the nine months ended September 30, 2024 and 2023, the Company repurchased 681 thousand shares and 1,203 thousand shares of its common stock for approximately $98.0 million and $147.7 million, respectively. As of September 30, 2024, approximately $185.7 million remained available for share repurchases pursuant to the Company's share repurchase program.
Excise tax on stock repurchases net of issue was immaterial to the Company's financial results and cash flows for the nine months ended September 30, 2024 and 2023 and the Company's financial position as of September 30, 2024 and December 31, 2023.
NOTE 10.                            Income Taxes
The Company's income tax provision for interim periods is determined using an estimate of its annual effective tax rate, adjusted for discrete items, if any, that arise during the period. Each quarter, the Company updates its estimate of the annual effective tax rate, and if the estimated annual effective tax rate changes, the Company makes a cumulative adjustment in such period.
The Company's quarterly tax provision, and estimate of its annual effective tax rate, is subject to variation due to several factors, including variability in pretax income (or loss), the mix of jurisdictions to which such income relates, changes in how the Company does business, tax law developments and possible outcomes of audits. The Company's estimated effective tax rate for the year differs from the U.S. statutory rate of 21% primarily due to non-deductible stock-based compensation expense, state taxes, the benefit of U.S. federal income tax credits, the impact of mandatory capitalization of research expenses for U.S. tax purposes, and the benefits related to foreign-derived intangible income deduction.
24

The Company recorded an income tax provision of $6.1 million and $1.5 million for the three months ended September 30, 2024 and 2023, respectively, resulting in an effective tax rate of 11.7% and 3.1%, respectively. The increase in income tax provision for the three months ended September 30, 2024 compared to the three months ended September 30, 2023, was primarily due to the tax effect of an increase in pretax income and a decrease in excess tax benefits arising from stock-based compensation. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.
The Company recorded an income tax provision of $26.3 million and $20.1 million for the nine months ended September 30, 2024 and 2023, respectively, resulting in an effective tax rate of 16.8% and 15.3%, respectively. The increase in income tax provision for the nine months ended September 30, 2024 compared to the nine months ended September 30, 2023, was primarily due to the tax effect of an increase in pretax income. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.
As of September 30, 2024, the Company had unrecognized tax benefits of $14.3 million, of which $7.8 million, if recognized, would favorably impact the Company's effective tax rate. As of December 31, 2023, the Company had unrecognized tax benefits of $11.9 million, of which $6.1 million, if recognized, would favorably impact the Company's effective tax rate. Due to various factors, including uncertainties of administrative and regulatory processes in certain jurisdictions, the timing of the resolution of these unrecognized tax benefits is uncertain. It is possible that within the next twelve months the Company may receive additional tax adjustments that could result in changes to the Company's unrecognized tax benefits related to positions on prior year tax filings.
NOTE 11.                            Segment and Geographic Area Information
Under ASC 280 Segment Reporting, operating segments are defined as components of an entity about which separate financial information is evaluated regularly by the chief operating decision maker in deciding how to allocate resources and in assessing performance. The Company operates in one segment and has only one reportable segment. The Company’s chief operating decision maker is the Chief Executive Officer, who makes operating decisions, assesses performance and allocates resources on a consolidated basis. All of the Company’s principal operations and decision-making functions are located in the United States.
Revenue by geographic area, based on the customer's billing address, is as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
United States$89,238 $85,377 $262,614 $246,348 
Foreign64,629 56,619 185,766 163,540 
Total revenues$153,867 $141,996 $448,380 $409,888 
Long-lived assets, which consist of Property and equipment, net and Operating leases - right of use asset, by geographic area, are as follows:
September 30,
2024
December 31,
2023
(in thousands)
United States$47,643 $42,622 
India19,404 9,952 
Rest of world1,590 2,416 
Total Long-lived Assets$68,637 $54,990 
25

NOTE 12.                            Net Income Per Share
The computations for basic and diluted net income per share are as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands, except per share data)(in thousands, except per share data)
Numerator:
Net income$46,212 $46,515 $129,715 $111,002 
Denominator:
Basic weighted average shares36,762 36,766 36,877 36,891 
Effect of potentially dilutive shares:
Stock options279 465 372 471 
Restricted stock units91 212 188 151 
Employee stock purchase plan4 5 4 3 
Diluted weighted average shares37,136 37,448 37,441 37,516 
Net income per share:
Basic$1.26 $1.27 $3.52 $3.01 
Diluted$1.24 $1.24 $3.46 $2.96 
Potentially dilutive shares not included in the calculation of diluted net income per share because doing so would be anti-dilutive are as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Stock options854762585925
Restricted stock units3111119186
Employee stock purchase plan149
Total anti-dilutive shares1,1657777041,120
26

Item 2.                                  Management's Discussion and Analysis of Financial Condition and Results of Operations
This Quarterly Report on Form 10-Q, including this Management’s Discussion and Analysis of Financial Condition and Results of Operations, should be read in conjunction with (1) our unaudited condensed consolidated financial statements and the related notes included elsewhere in this report, and (2) the audited consolidated financial statements and the related notes and section titled "Management’s Discussion and Analysis of Financial Condition and Results of Operations" included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2023.
In addition to historical information, this Quarterly Report on Form 10-Q contains “forward-looking” statements within the meaning of Section 21E of the Securities Exchange Act of 1934, as amended, or the Exchange Act. Forward-looking statements generally relate to future events or our future financial or operating performance. In some cases, it is possible to identify forward-looking statements because they contain words such as “anticipates,” “believes,” “contemplates,” “continue,” “could,” “estimates,” “expects,” “future,” “intends,” “likely,” “may,” “plans,” “potential,” “predicts,” “projects,” “seek,” “should,” “target,” or “will,” or the negative of these words or other similar terms or expressions that concern our expectations, strategy, plans or intentions. Forward-looking statements contained in this Quarterly Report on Form 10-Q include, but are not limited to, statements about:
our financial performance, including our revenues, costs, expenditures, growth rates, operating expenses and ability to generate positive cash flow to fund our operations and sustain profitability;
anticipated technology trends, such as the use of cloud solutions;
our ability to adapt to changing market conditions;
economic and financial conditions, including volatility in foreign exchange rates, inflation concerns, high interest rates, recessionary fears, significant volatility of global markets, reduced spending and extended sales cycles, and geopolitical conflicts;
our ability to diversify our sources of revenues, including selling additional solutions to our existing customers and our ability to pursue new customers;
the effects of increased competition in our market;
our ability to innovate and enhance our cloud solutions and platform and introduce new solutions;
our ability to effectively manage our growth;
our anticipated investments in sales and marketing, our infrastructure, new solutions, research and development, and acquisitions;
maintaining and expanding our relationships with channel partners;
our ability to maintain, protect and enhance our brand and intellectual property;
costs associated with defending intellectual property infringement and other claims;
our ability to attract and retain qualified employees and key personnel, including sales and marketing personnel;
our ability to successfully enter new markets and manage our international expansion;
our expectations, assumptions and conclusions related to our income tax provision, our deferred tax assets and our effective tax rate;
our expectations regarding the performance of, and our future trading activity with respect to, the marketable securities we hold;
our expectations regarding our share repurchase program; and
other factors discussed in this Quarterly Report on Form 10-Q in the sections titled “Risk Factors” and “Management's Discussion and Analysis of Financial Condition and Results of Operations.”
We have based the forward-looking statements contained in this Quarterly Report on Form 10-Q primarily on our current expectations and projections about future events and trends that we believe may affect our business, financial condition, results of operations and prospects. The results, events and circumstances reflected in these forward-looking statements are subject to risks, uncertainties, assumptions, and other factors including those described in Part II, Item 1A (Risk Factors) of this Quarterly Report on Form 10-Q and those discussed in other documents we file with the U.S. Securities and Exchange Commission (SEC). Moreover, we operate in a very competitive and rapidly changing environment. New risks and uncertainties emerge from time to time, and it is not possible for us to predict all risks and uncertainties that could have an impact on the forward-looking statements used herein. We cannot provide assurance that the results, events, and circumstances reflected in the forward-looking statements will be achieved or occur, and actual results, events or circumstances could differ materially from those described in the forward-looking statements.
27

Overview
We are a leading provider of a cloud-based platform delivering information technology (IT), security and compliance solutions that enable organizations to identify security risks to their IT infrastructures, help protect their IT systems and applications from ever-evolving cyber-attacks and achieve compliance with internal policies and external regulations. Our cloud platform addresses the growing security and compliance complexities and risks that are amplified by the dissolving boundaries between IT infrastructures and web environments, the rapid adoption of cloud computing, containers and serverless IT models, and the proliferation of geographically dispersed IT assets. Our integrated suite of IT, security and compliance solutions delivered on Qualys' Enterprise TruRisk Platform enables our customers to identify and manage their IT and operational technology (OT) assets, collect and analyze large amounts of IT security data, discover and prioritize vulnerabilities, quantify cyber risk exposure, recommend and implement remediation actions and verify the implementation of such actions. Organizations use our integrated suite of solutions to cost-effectively obtain a unified view of their internal and external IT and OT asset inventory as well as security and compliance posture across globally-distributed IT infrastructures as our solution offers a single platform for information technology, information security, application security, endpoint, developer security and cloud teams.
We were founded and incorporated in December 1999 with a vision of transforming the way organizations secure and protect their IT infrastructure and applications and initially launched our first cloud solution, Vulnerability Management (VM), in 2000. As VM gained acceptance, we introduced additional solutions to help customers manage increasing IT, security and compliance requirements. Today, the suite of solutions that we offer on our cloud platform and refer to as the Qualys Cloud Apps help our customers detect, measure, prioritize and remediate cyber risk spanning a range of assets across on-premises, endpoints, cloud, containers, and mobile environments.
We provide our solutions through a software-as-a-service model, primarily with renewable annual subscriptions. These subscriptions require customers to pay a fee in order to access each of our cloud solutions. We generally invoice our customers for the entire subscription amount at the start of the subscription term, and the invoiced amounts are treated as deferred revenues and are recognized ratably over the term of each subscription. We continue to experience revenue growth from our existing customers as they renew and purchase additional subscriptions, as well as from the addition of new customers to our cloud platform.
We market and sell our solutions to enterprises, government entities and small and medium-sized businesses across a broad range of industries, including education, financial services, government, healthcare, insurance, manufacturing, media, retail, technology and utilities. For the nine months ended September 30, 2024 and 2023, approximately 59% and 60%, respectively, of our revenues were derived from customers in the United States based on our customers' billing addresses. We sell our solutions to enterprises and government entities primarily through our field sales force and to small and medium-sized businesses through our inside sales force. We generate a significant portion of sales through our channel partners, including managed security service providers, leading cloud providers, value-added resellers and consulting firms in the United States and internationally.
Impacts of Current Macroeconomic Environment
The uncertainty surrounding macroeconomic factors in the U.S. and globally characterized by the inflationary pressure, high interest rates, significant volatility of global markets, reduced spending and extended sales cycles, and geopolitical conflicts could have a material adverse effect on our long-term business and could lead to further economic disruption and expose us to greater risk as our current and potential customers may reduce or eliminate their overall spending on IT security. We will continue to evaluate the nature and extent of the impact to our business, financial position, results of operations and cash flows.
28

Key Components of Results of Operations
Revenues
We derive revenues from the sale of subscriptions to our IT, security and compliance solutions, which are delivered on our cloud platform. Subscriptions to our solutions allow customers to access our cloud-based IT, security and compliance solutions through a unified, web-based interface. Customers generally enter into one-year renewable subscriptions. The subscription fee entitles the customer to an unlimited number of scans for a specified number of devices or web applications and, if requested by a customer as part of their subscription, a specified number of physical or virtual scanner appliances. Our physical and virtual scanner appliances are requested by certain customers as part of their subscriptions in order to scan IT infrastructures within their firewalls and do not function without, and are not sold separately from, subscriptions for our solutions. In some cases, we also provide certain computer equipment used to extend our cloud platform into our customers' private cloud environment. Customers are required to return physical scanner appliances and computer equipment if they do not renew their subscriptions.
We typically invoice our customers for the entire subscription amount at the start of the subscription term. Invoiced amounts are reflected on our condensed consolidated balance sheets as accounts receivable or as cash when collected, and as deferred revenues until earned and recognized ratably over the subscription period. Accordingly, deferred revenues represent the amount billed to customers that has not yet been earned or recognized as revenues, pursuant to subscriptions entered into in current and prior periods.
Cost of Revenues
Cost of revenues consists primarily of personnel expenses, comprised of salaries, benefits, performance-based compensation and stock-based compensation, for employees who operate our shared cloud platforms and provide support services to our customers. Other expenses include depreciation of shared cloud platform equipment, physical scanner appliances and computer hardware provided to certain customers as part of their subscriptions, expenses related to the use of shared cloud platforms, amortization of software and license fees, amortization of intangibles related to acquisitions, maintenance support, fees paid to contractors who supplement or support our operations center personnel and overhead allocations. We expect to continue to expand our shared cloud platform infrastructures and hire additional employees to support our operations, which in turn, is expected to increase the cost of revenues in absolute dollars.
Operating Expenses
Research and Development
Research and development expenses consist primarily of personnel expenses, comprised of salaries, benefits, performance-based compensation and stock-based compensation, for our research and development teams. Other expenses include third-party contractor fees, software and license fees, amortization of intangibles related to acquisitions and overhead allocations. We expect to continue to devote resources to research and development in an effort to continuously improve our existing solutions as well as develop new solutions and capabilities, which in turn, is expected to increase the research and development expenses in absolute dollars.
Sales and Marketing
Sales and marketing expenses consist primarily of personnel expenses, comprised of salaries, benefits, sales commissions, performance-based compensation and stock-based compensation for our worldwide sales and marketing teams. Other expenses include marketing and promotional events, lead-generation marketing programs, public relations, travel, software licenses and overhead allocations. Sales commissions related to new business and upsells are capitalized as an asset. We amortize the capitalized commission cost as a selling expense on a straight-line basis over a period of five years. We expense sales commissions related to contract renewals as incurred. Our new sales personnel are typically not immediately productive, and the resulting increase in sales and marketing expenses we incur when we add new personnel may not result in increased revenues if these new sales personnel fail to become productive. The timing of our hiring of sales personnel, or the participation in new marketing events or programs, and the rate at which these generate incremental revenues, may affect our future operating results. We expect to continue to invest in additional sales personnel worldwide and also in more marketing programs to support new solutions on our platform, which in turn, is expected to increase sales and marketing expenses in absolute dollars.
29

General and Administrative
General and administrative expenses consist primarily of personnel expenses, comprised of salaries, benefits, performance-based compensation and stock-based compensation for our executive, finance and accounting, IT, legal and human resources teams, as well as professional services, fees, software licenses and overhead allocations. We expect to continue to add personnel and incur professional services to support our growth and compliance with legal and regulatory requirements, which in turn, is expected to increase general and administrative expenses in absolute dollars.
Other Income (Expense), Net
Our other income (expense), net consists primarily of interest and returns from our cash equivalent, short-term and long-term marketable securities, non-marketable securities gains and losses, and foreign exchange gains and losses.
Income Tax Provision
We are subject to federal, state and foreign income taxes for jurisdictions in which we operate, and we use estimates in determining our income tax provision and deferred tax assets. Earnings from our non-U.S. activities are subject to income taxes in the local countries at rates which are generally similar to the U.S. statutory tax rate. We regularly assess the realizability of our net deferred tax assets. As of September 30, 2024, valuation allowances remain in certain jurisdictions where we believe it is necessary to see positive evidence, such as sustained achievement of sufficient profits, to meet a more likely than not stance that the valuation allowance should be reversed. The exact timing and amount of the valuation allowance release is subject to change based on the level of profitability achieved in future periods. Release of the valuation allowance would result in the recognition of deferred tax assets and a corresponding decrease to income tax expense in the period the release is recorded.
Results of Operations
The following table sets forth selected condensed consolidated statements of operations data for each of the periods presented as a percentage of revenues:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
Revenues100 %100 %100 %100 %
Cost of revenues19 19 18 20 
Gross profit81 81 82 80 
Operating expenses:
Research and development19 20 19 20 
Sales and marketing21 20 21 19 
General and administrative12 10 11 11 
Total operating expenses52 50 51 50 
Income from operations29 31 31 30 
Total other income, net
Income before income taxes34 34 35 32 
Income tax provision
Net income30 %33 %29 %27 %
30

Comparison of Three and Nine Months Ended September 30, 2024 and 2023
Revenues
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
Revenues$153,867 $141,996 $11,871 %$448,380 $409,888 $38,492 %
Revenues increased by $11.9 million for the three months ended September 30, 2024 compared to the same period in 2023, driven by increased demand for our subscription services by our end customers. Of the total increase of $11.9 million in revenues, 93% was from revenues from customers existing prior to July 1, 2024, and the remaining 7% was from new customers added in the three months ended September 30, 2024. Of the total increase of $11.9 million, 33% was from customers in the United States and the remaining 67% was from customers in foreign countries. Of the total increase of $11.9 million, 10% was from direct customers and the remaining 90% was from partners. In the three months ended September 30, 2024, 53% of total revenue was direct and the remaining 47% was from partners.
Revenues increased by $38.5 million for the nine months ended September 30, 2024 compared to the same period in 2023, driven by increased demand for our subscription services by our end customers. Of the total increase of $38.5 million in revenues, 78% was from revenues from customers existing prior to January 1, 2024, and the remaining 22% was from new customers added in the nine months ended September 30, 2024. Of the total increase of $38.5 million, 42% was from customers in the United States and the remaining 58% was from customers in foreign countries. Of the total increase of $38.5 million, 20% was from direct customers and the remaining 80% was from partners. In the nine months ended September 30, 2024, 54% of total revenue was direct and the remaining 46% was from partners.
With our strong market position driving further demand for our solutions, we expect revenue growth from new and existing customers to continue.
Cost of Revenues
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
Cost of revenues$28,832 $26,739 $2,093 %$82,445 $80,355 $2,090 %
Cost of revenues increased by $2.1 million for the three months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in shared cloud platform cost of $2.1 million, an increase in personnel costs, including stock-based compensation, of $1.2 million, driven by additional employees hired to support the growth of our business, an increase in professional service expenses and license expenses of $0.9 million, partially offset by a decrease in depreciation and amortization expense of $2.1 million resulting from certain of our assets becoming fully depreciated or amortized.
Cost of revenues increased by $2.1 million for the nine months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in shared cloud platform cost of $3.9 million, an increase in personnel costs, including stock-based compensation, of $3.2 million, driven by additional employees hired to support the growth of our business, an increase in license expenses and professional service expenses of $1.1 million, partially offset by a decrease in depreciation and amortization expense of $6.1 million resulting from certain of our assets becoming fully depreciated or amortized.
31

Research and Development Expenses
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
Research and development$28,901 $27,782 $1,119 %$83,550 $83,001 $549 %
Research and development expenses increased by $1.1 million for the three months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in personnel costs, including stock-based compensation, driven by increased headcount.
Research and development expenses increased by $0.5 million for the nine months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in personnel costs, including stock-based compensation, of $2.2 million, driven by increased headcount, partially offset by a decrease in overhead allocation of $1.0 million, and a decrease in depreciation and amortization expense in property and equipment of $0.7 million.
Sales and Marketing Expenses
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
Sales and marketing$32,686 $27,881 $4,805 17 %$94,240 $79,750 $14,490 18 %
Sales and marketing expenses increased by $4.8 million for the three months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in personnel costs, including stock-based compensation, of $3.7 million, driven by increased headcount, and an increase in travel and entertainment cost and other expenses of $1.1 million.
Sales and marketing expenses increased by $14.5 million for the nine months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in personnel costs, including stock-based compensation, of $10.8 million, driven by increased headcount, an increase in marketing expenses related to trade shows of $1.7 million, an increase in travel and entertainment cost of $1.6 million, and an increase in subscribed license and software costs of $0.4 million.
General and Administrative Expenses
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
General and administrative$18,494 $15,999 $2,495 16 %$50,362 $45,182 $5,180 11 %
General and administrative expenses increased by $2.5 million for the three months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in personnel costs, including stock-based compensation, of $1.3 million, driven by increased headcount, annual merit increases and refresh grants to eligible employees and executives, and an increase in subscribed software costs and other expenses of $1.2 million.

32

General and administrative expenses increased by $5.2 million for the nine months ended September 30, 2024 compared to the same period in 2023, primarily due to an increase in personnel costs, including stock-based compensation, of $4.5 million, driven by increased headcount, annual merit increases and refresh grants to eligible employees and executives, and an increase in subscribed software costs and other expenses of $0.7 million.
Total other income, net
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
Total other income, net$7,369 $4,428 $2,941 66 %$18,209 $9,459 $8,750 93 %
Total other income, net increased by $2.9 million for the three months ended September 30, 2024, compared to the same periods in 2023, primarily due to an increase in interest income of $1.6 million driven by an increase in market interest rates and our investment balance, and an increase in foreign currency gain of $1.3 million.
Total other income, net increased by $8.8 million for the nine months ended September 30, 2024, compared to the same periods in 2023, primarily due to an increase in interest income of $8.3 million driven by an increase in market interest rates and our investment balance, and a non-recurring unrealized loss of $0.5 million on a non-marketable equity security recognized during the nine months ended September 30, 2023.
Income tax provision
Three Months Ended
September 30,
ChangeNine Months Ended
September 30,
Change
20242023$%20242023$%
(in thousands, except percentages)(in thousands, except percentages)
Income tax provision$6,111 $1,508 $4,603 305 %$26,277 $20,057 $6,220 31 %
Income tax provision increased by $4.6 million for the three months ended September 30, 2024 compared to the same period in 2023 due to the tax effect of an increase in pretax income and a decrease in excess tax benefits arising from stock-based compensation. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.
Income tax provision increased by $6.2 million for the nine months ended September 30, 2024 compared to the same period in 2023 due to the tax effect of an increase in pretax income. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.
For the three months and nine months ended September 30, 2024, our income tax provision was reduced by $4.0 million primarily due to higher foreign derived intangible income benefit and research and development tax credits than previously estimated. The above income tax benefit includes a discrete tax benefit of $2.5 million associated with our U.S. income tax return.
Key Operating and Non-GAAP Financial Performance Metrics
In addition to measures of financial performance presented in our condensed consolidated financial statements, we monitor the key metrics set forth below to help us evaluate growth trends, establish budgets, measure the effectiveness of our sales and marketing efforts and assess operational efficiencies.

33

Net Dollar Expansion Rate
We evaluate our ability to retain and grow existing customers by assessing our net dollar expansion rate on a last twelve months, or LTM, basis. This metric is used to appropriately manage resources and customer retention and expansion. We calculate the net dollar expansion rate on a foreign exchange neutral basis by dividing a numerator by a denominator, each defined as follows:
Denominator: To calculate our net dollar expansion rate as of the end of a reporting period, we first determine the annual recurring revenue, or ARR, from all active subscriptions as of the last day of the same reporting period in the prior year. This represents recurring payments that we expect to receive in the next 12-month period from the cohort of customers that existed on the last day of the same reporting period in the prior year.
Numerator: We measure the ARR for that same cohort of customers representing all active subscriptions as of the end of the reporting period, using the same foreign exchange rate from the prior year.
Our net dollar expansion rates were 103% and 106% as of September 30, 2024 and September 30, 2023, respectively.
Adjusted EBITDA
We monitor Adjusted EBITDA, a non-GAAP financial measure, to analyze our financial results and believe that it is useful to investors, as a supplement to U.S. GAAP measures, in evaluating our ongoing operational performance and enhancing an overall understanding of our past financial performance. We believe that Adjusted EBITDA helps illustrate underlying trends in our business that could otherwise be masked by the effect of the income or expenses that we exclude in Adjusted EBITDA. Furthermore, we use this measure to establish budgets and operational goals for managing our business and evaluating our performance. We also believe that Adjusted EBITDA provides an additional tool for investors to use in comparing our recurring core business operating results over multiple periods with other companies in our industry.
Adjusted EBITDA should not be considered in isolation from, or as a substitute for, financial information prepared in accordance with U.S. GAAP. We calculate Adjusted EBITDA as net income before (1) other (income) expense, net, which includes interest income, interest expense and other income and expense, (2) income tax provision (benefit), (3) depreciation and amortization of property and equipment, (4) amortization of intangible assets, (5) stock-based compensation and (6) non-recurring expenses that do not reflect ongoing costs of operating the business.
Adjusted EBITDA has limitations as an analytical tool and should not be considered in isolation from or as a substitute for the measures presented in accordance with U.S. GAAP. Some of these limitations are:
Adjusted EBITDA does not reflect certain cash and non-cash charges that are recurring;
Adjusted EBITDA does not reflect income tax payments that reduce cash available to us;
Adjusted EBITDA excludes depreciation and amortization of property and equipment and amortization of intangible assets, although these are non-cash charges, the assets being depreciated and amortized may have to be replaced in the future; and
Other companies, including companies in our industry, may calculate Adjusted EBITDA differently or not at all, which reduces its usefulness as a comparative measure.
34

Because of these limitations, Adjusted EBITDA should be considered alongside other financial performance measures, including revenues, net income, cash flows from operating activities and our financial results presented in accordance with U.S. GAAP. The following unaudited table presents the reconciliation of net income to Adjusted EBITDA for the three and nine months ended September 30, 2024 and 2023:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands, except percentages)
(in thousands, except percentages)
Net income$46,212 $46,515 $129,715 $111,002 
Net income as a percentage of revenues30 %33 %29 %27 %
Depreciation and amortization of property and equipment3,670 5,922 12,146 18,824 
Amortization of intangible assets721 772 2,264 2,316 
Income tax provision6,111 1,508 26,277 20,057 
Stock-based compensation20,337 18,522 56,454 50,560 
Total other income, net
(7,369)(4,428)(18,209)(9,459)
Adjusted EBITDA$69,682 $68,811 $208,647 $193,300 
Adjusted EBITDA as a percentage of revenues45 %48 %47 %47 %
Liquidity and Capital Resources
As of September 30, 2024, our principal source of liquidity was cash, cash equivalents and marketable securities of $573.0 million, including $122.4 million of cash held outside of the United States. The following summary of cash flows for the periods indicated has been derived from our condensed consolidated financial statements included elsewhere in this report:
Nine Months Ended
September 30,
20242023
(in thousands)
Net cash provided by operating activities$196,372 $210,766 
Net cash used in investing activities(59,509)(47,499)
Net cash used in financing activities(106,598)(128,262)
Net increase in cash, cash equivalents and restricted cash$30,265 $35,005 
Operating Activities
During the nine months ended September 30, 2024, we generated $180.4 million of cash from our net income, as adjusted for non-cash items mainly related to stock-based compensation expense, depreciation and amortization expense and deferred taxes, as compared to $168.4 million during the nine months ended September 30, 2023. In addition, we also generated $16.0 million of cash from changes in working capital during the nine months ended September 30, 2024, of which $26.8 million was related to decreases in accounts receivable and deferred revenue due to the timing of collections and billings, partially offset by a $9.9 million increase in prepaid expenses and a $1.0 million decrease in payables and accrued liabilities primarily driven by the timing of payments. During the nine months ended September 30, 2023, we generated $42.4 million of cash from changes in working capital, of which $40.4 million was attributed to the combination of an increase in deferred revenue and a decrease accounts receivable due to the growth in billing and timing of collections, and a $6.8 million increase in payables and accrued liabilities, partially offset by a $4.8 million increase in prepaid expenses primarily driven by the timing of payments.
35

Investing Activities
During the nine months ended September 30, 2024, we used $53.0 million of cash for purchases of marketable securities net of sales and maturities, and used $6.5 million of cash in capital expenditures mainly related to purchases of computer equipment to support our growth and development, as compared to $40.2 million of cash for purchases of marketable securities net of sales and maturities, and used $7.3 million of cash in capital expenditures during the nine months ended September 30, 2023.
Financing Activities
During the nine months ended September 30, 2024, we used $97.2 million of cash for share repurchases, $23.1 million of cash in payment of employee withholding taxes upon vesting of restricted stock units and $1.5 million payment of cash held in escrow as part of the Blue Hexagon acquisition on October 4, 2022, partially offset by $8.3 million of proceeds from employee exercise of stock options and $6.9 million of proceeds from issuance of common stock through our ESPP, as compared to $147.7 million of cash used for share repurchases, and $15.0 million of cash used in payment of employee withholding taxes upon vesting of restricted stock units, partially offset by $28.4 million of proceeds from employee exercise of stock options and $6.1 million of proceeds from issuance of common stock through our ESPP during the nine months ended September 30, 2023.
Material Cash Requirements
We believe our existing cash and cash equivalents, marketable securities and our expected cash flow generated from operations will be sufficient to fund our operations for the next twelve months and beyond. If we repatriate funds from our foreign subsidiaries, we could be subject to foreign withholding taxes.
Operating lease obligations
Our material cash requirements include our operating lease obligations to make payments under our non-cancelable lease agreements for our facilities and shared cloud platforms. We had fixed operating lease payment obligations of $56.8 million as of September 30, 2024, with $13.6 million expected to be paid within the next 12 months.
Purchase Commitments
As of September 30, 2024, other than the changes described above in this section entitled "Liquidity and Capital Resources" in this Quarterly Report on Form 10-Q, there have been no other material changes to our cash requirements for purchase commitments as described in “Part II, Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations” of our Annual Report on Form 10-K for the fiscal year ended December 31, 2023.
Share Repurchases
We expect to continue to use cash to repurchase shares in 2024 under our share repurchase program authorized by our board of directors on February 5, 2018. On February 7, 2024, we announced that our board of directors authorized an additional $200.0 million to the share repurchase program authorization, increasing the total amount of authorized repurchase to $1.2 billion. As of September 30, 2024, approximately $185.7 million remained available under our share repurchase program. Shares will be repurchased from time to time in privately negotiated transactions or on the open market in accordance with Rule 10b-18 of the Exchange Act of 1934, including pursuant to a pre-set trading plan adopted in accordance with Rule 10b5-1 under the Exchange Act.
Recent Accounting Pronouncements
See Note 1 to the unaudited condensed consolidated financial statements in Part I, Item 1 of this Quarterly Report on Form 10-Q for a discussion of recent accounting pronouncements.
Critical Accounting Estimates
There have been no material changes to our critical accounting estimates as described in our Annual Report on Form 10-K for the fiscal year ended December 31, 2023.
36

Item 3.                                Quantitative and Qualitative Disclosures about Market Risk
We have domestic and international operations and we are exposed to market risks in the ordinary course of our business. These risks primarily include interest rate, foreign exchange and inflation risks, as well as risks relating to changes in the general economic conditions in the countries where we conduct business. To reduce certain of these risks, we monitor the financial condition of our large customers and limit credit exposure by collecting subscription fees in advance.
Foreign Currency Risk
Our results of operations and cash flows have been and will continue to be subject to fluctuations because of changes in foreign currency exchange rates, particularly changes in exchange rates between the U.S. Dollar and the EUR, GBP, INR and CAD, the currencies of countries where we currently have our most significant international operations. We enter into foreign currency forward contracts to reduce our exposure to foreign currency exchange rate fluctuations related to forecasted subscription revenue, operating expenses and foreign currency denominated assets or liabilities. As of September 30, 2024, we had designated cash flow hedge forward contracts with notional amounts of €46.4 million, £18.0 million and Rs.4,273.0 million and non-designated forward contracts with notional amounts of €12.5 million, £5.1 million, Rs.1,208.0 million and C$1.2 million. With our hedging strategy applied, the effect of an immediate 10% adverse change in foreign exchange rates would not be material to our financial condition, operating results or cash flows.
Interest Rate Sensitivity
We had $573.0 million in cash, cash equivalents and short-term and long-term marketable securities as of September 30, 2024. Our exposure to market risk for changes in interest rates primarily relates to our cash and cash equivalents and marketable securities. Our cash equivalents and marketable securities are held in money market funds, fixed-income U.S. Treasury and government agency securities, commercial paper, corporate bonds and asset-backed securities. The primary objectives of our investment activities are the preservation of principal and support of our liquidity requirements. We do not invest for trading or speculative purposes. Our marketable securities are subject to market risk due to changes in interest rates, which may affect the interest income we earn and the fair market value of our securities. As of September 30, 2024, a hypothetical 100 basis point increase in interest rate would not result in a material decrease in the fair value of our marketable securities.
Item 4.                                Controls and Procedures
Evaluation of Disclosure Controls and Procedures
Our management, with the participation of our Chief Executive Officer and Chief Financial Officer, evaluated the effectiveness of our disclosure controls and procedures as of September 30, 2024. The term “disclosure controls and procedures,” as defined in Rules 13a-15(e) and 15d-15(e) under the Exchange Act, means controls and other procedures of a company that are designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is recorded, processed, summarized and reported, within the time periods specified in the Securities and Exchange Commission’s rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is accumulated and communicated to the company’s management, including its principal executive and principal financial officers, as appropriate to allow timely decisions regarding required disclosure. Management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving their objectives and management necessarily applies its judgment in evaluating the cost-benefit relationship of possible controls and procedures. Based on the evaluation of our disclosure controls and procedures as of September 30, 2024, our Chief Executive Officer and Chief Financial Officer concluded that, as of such date, our disclosure controls and procedures were effective at the reasonable assurance level.
Changes in Internal Control over Financial Reporting
There were no changes in our internal control over financial reporting identified in connection with the evaluation required by Rules 13a-15(d) and 15d-15(d) of the Exchange Act that occurred during the period covered by this report that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.
37

PART II. OTHER INFORMATION
Item 1.                                  Legal Proceedings
From time to time the Company may become involved in legal proceedings or be subject to claims arising in the ordinary course of our business. As of September 30, 2024, there has not been at least a reasonable possibility that the Company has incurred a material loss from any ongoing legal proceedings, individually or taken together. However, litigation is inherently unpredictable and is subject to significant uncertainties, some of which are beyond the Company's control. Should any of these estimates and assumptions change or prove to have been incorrect, the Company could incur significant charges related to legal matters which could have a material impact on its results of operations, financial position and cash flows.
Item 1A.                               Risk Factors
An investment in our common stock involves a high degree of risk. You should carefully consider the risks and uncertainties described below, and all other information contained in this Quarterly Report on Form 10-Q, including our condensed consolidated financial statements and the related notes, before making a decision to invest in our common stock. Our business, operating results, financial condition, or prospects could be materially and adversely affected by any of these risks and uncertainties. In that case, the trading price of our common stock could decline, and you might lose all or part of your investment. In addition, the risks and uncertainties discussed below are not the only ones we face. Our business, operating results, financial performance or prospects could also be harmed by risks and uncertainties not currently known to us or that we currently do not believe are material.
Risks Related to Our Business and Industry
Our quarterly and annual operating results may vary from period to period, which could result in our failure to meet expectations with respect to operating results and cause the trading price of our stock to decline.
Our operating results have historically varied from period to period, and we expect that they will continue to do so as a result of a number of factors, many of which are outside of our control, including:
the level of demand for our solutions, from both existing and new customers;
the extent to which customers subscribe for additional solutions;
changes in customer renewals of our solutions;
timing of deals signed within the applicable fiscal period;
seasonal buying patterns of our customers;
timely invoicing or changes in billing terms of customers;
the length of our sales cycle for our products and services;
price competition;
the timing and success of new product or service introductions by us or our competitors or any other changes in the competitive landscape of our industry, including consolidation among our competitors;
the introduction or adoption of new technologies that compete with our solutions;
decisions by potential customers to purchase IT, security and compliance products or services from other vendors;
general economic conditions, both domestically and in the foreign markets in which we sell our solutions;
changes in foreign currency exchange rates;
changes in the growth rate of the IT, security and compliance market;
actual or perceived security breaches and incidents, technical difficulties or interruptions with our service;
failure of our products and services to operate as designed;
publicity regarding security breaches and incidents generally and the level of perceived threats to IT security;
38

the announcement or adoption of new regulations and policy mandates or changes to existing regulations and policy mandates;
the amount and timing of operating costs and capital expenditures related to the operations and expansion of our business;
pace and cost of hiring employees;
expenses associated with our existing and new products and services;
the timing of sales commissions relative to the recognition of revenues;
insolvency or credit difficulties confronting our customers, affecting their ability to purchase or pay for our solutions;
our ability to integrate any products or services that we have acquired or may acquire in the future into our product suite or migrate existing customers of any companies that we have acquired or may acquire in the future to our products and services;
future accounting pronouncements or changes in our accounting policies;
our effective tax rate, changes in tax rules, tax effects of infrequent or unusual transactions, and tax audit settlements;
the amount and timing of income tax that we recognize resulting from stock-based compensation;
the timing of expenses related to the development or acquisition of technologies, services or businesses; and
potential goodwill and intangible asset impairment charges associated with acquired businesses.
Further, the interpretation and application of international laws and regulations in many cases is uncertain, and our legal and regulatory obligations in foreign jurisdictions are subject to frequent and unexpected changes, including the potential for various regulatory or other governmental bodies to enact new or additional laws or regulations or to issue rulings that invalidate prior laws or regulations.
Each factor above or discussed elsewhere in this Quarterly Report on Form 10-Q or the cumulative effect of some of these factors may result in fluctuations in our operating results. This variability and unpredictability could result in our failure to meet expectations with respect to operating results, or those of securities analysts or investors, for a particular period. In addition, a significant percentage of our operating expenses are fixed in nature and based on forecasted trends in revenues. Accordingly, in the event of shortfalls in revenues, we are generally unable to mitigate the negative impact on margins in the short term by reducing our operating expenses. If we fail to meet or exceed expectations for our operating results for these or any other reasons, the trading price of our common stock could fall and we could face costly lawsuits, including securities class action suits.
If we do not successfully anticipate market needs and opportunities or are unable to enhance our solutions and develop new solutions that meet those needs and opportunities on a timely or cost-effective basis, we may not be able to compete effectively and our business and financial condition may be harmed.
The IT, security and compliance market is characterized by rapid technological advances, customer price sensitivity, short product and service life cycles, intense competition, changes in customer requirements, frequent new product introductions and enhancements and evolving industry standards and regulatory mandates. Any of these factors could create downward pressure on pricing and gross margins, and could adversely affect our renewal rates, as well as our ability to attract new customers. Our future success will depend on our ability to enhance existing solutions, introduce new solutions on a timely and cost-effective basis, meet changing customer needs, extend our core technology into new applications, and anticipate and respond to emerging standards and business models. We must also continually change and improve our solutions in response to changes in operating systems, application software, computer and communications hardware, networking software, shared cloud platform infrastructures, programming tools and computer language technology.
We may not be able to anticipate future market needs and opportunities or develop enhancements or new solutions to meet such needs or opportunities in a timely manner or at all. The market for cloud solutions for IT, security and compliance continues to evolve, and it is uncertain whether our new solutions will gain market acceptance.
39

Our solution enhancements or new solutions could fail to attain sufficient market acceptance for many reasons, including:
failure to timely meet market demand for product functionality;
inability to identify and provide intelligence regarding the attacks or techniques used by cyber-attackers;
inability to inter-operate effectively with the database technologies, file systems or web applications of our prospective customers;
defects, errors or failures;
delays in releasing our enhancements or new solutions;
negative publicity about their performance or effectiveness;
introduction or anticipated introduction of products by our competitors;
poor business conditions, causing customers to delay IT, security and compliance purchases;
easing or changing of external regulations related to IT, security and compliance; and
reluctance of customers to purchase cloud solutions for IT, security and compliance.
Furthermore, diversifying our solutions and expanding into new IT, security and compliance markets will require significant investment and planning, require that our research and development and sales and marketing organizations develop expertise in these new markets, bring us more directly into competition with IT, security compliance providers that may be better established or have greater resources than we do, require additional investment of time and resources in the development and training of our channel partners and entail significant risk of failure.
If we fail to anticipate market requirements or fail to develop and introduce solution enhancements or new solutions to satisfy those requirements in a timely manner, such failure could substantially decrease or delay market acceptance and sales of our present and future solutions and cause us to lose existing customers or fail to gain new customers, which would significantly harm our business, financial condition and results of operations.
If we fail to continue to effectively scale and adapt our platform to meet the performance and other requirements of our customers, our operating results and our business would be harmed.
Our future growth depends to a significant extent on our ability to continue to meet the expanding needs of our customers as their use of our cloud platform grows. As these customers gain more experience with our solutions, the number of users and the number of locations where our solutions are being accessed may expand rapidly in the future. In order to ensure that we meet the performance and other requirements of our customers, we intend to continue to make significant investments to develop and implement new proprietary and third-party technologies at all levels of our cloud platform. These technologies, which include databases, applications and server optimizations, and network and hosting strategies, are often complex, new and unproven. We may not be successful in developing or implementing these technologies. To the extent that we do not effectively scale our platform to maintain performance as our customers expand their use of our platform, our operating results and our business may be harmed.
If we are unable to renew existing subscriptions for our IT, security and compliance solutions, sell additional subscriptions for our solutions and attract new customers, our operating results would be harmed.
We offer our cloud platform and integrated suite of solutions pursuant to a software-as-a-service model, and our customers purchase subscriptions from us that are generally one year in length. Our customers have no obligation to renew their subscriptions after their subscription period expires, and they may not renew their subscriptions at the same or higher levels or at all. As a result, our ability to grow depends in part on customers renewing their existing subscriptions and purchasing additional subscriptions and solutions. Our customers may choose not to renew their subscriptions to our solutions or purchase additional solutions due to a number of factors, including their satisfaction or dissatisfaction with our solutions, the prices of our solutions, the prices of products or services offered by our competitors, reductions in our customers’ spending levels due to the macroeconomic environment or other factors. If our customers do not renew their subscriptions to our solutions, renew on less favorable terms, or do not purchase additional solutions or subscriptions, our revenues may grow more slowly than expected or decline and our operating results would be harmed.
40

In addition, our future growth depends in part upon increasing our customer base. Our ability to achieve significant growth in revenues in the future will depend, in large part, upon continually attracting new customers and obtaining subscription renewals to our solutions from those customers. If we fail to attract new customers, our revenues may grow more slowly than expected and our operating results would be harmed.
Our current research and development efforts may not produce successful products or enhancements to our platform that result in significant revenue, cost savings or other benefits in the near future.
We must continue to dedicate significant financial and other resources to our research and development efforts if we are to maintain our competitive position. However, developing products and enhancements to our platform is expensive and time consuming, and there is no assurance that such activities will result in significant new marketable products or enhancements to our platform, design improvements, cost savings, revenue or other expected benefits. If we spend significant resources on research and development and are unable to generate an adequate return on our investment, our business and results of operations may be materially and adversely affected.
Our platform, website and internal systems may be subject to intentional disruption or other security incidents that could result in liability and adversely impact our reputation and future sales.
We and our service providers face threats from a variety of sources, including attacks on our networks and systems from numerous sources, including traditional “hackers,” sophisticated nation-state and nation-state supported actors, other sources of malicious code (such as viruses and worms), ransomware, social engineering, denial of service attacks, and phishing attempts. We and our service providers could be a target of cyber-attacks or other malfeasance designed to impede the performance of our solutions, penetrate our network security or the security of our cloud platform or our internal systems, misappropriate proprietary information and/or cause interruptions to our services. We and our service providers have experienced and may continue to experience security incidents and attacks of varying degrees from time to time. We have incurred costs to respond to such incidents and may continue to incur costs to support our efforts to enhance our security measures. Additionally, due to political uncertainty and military actions in parts of Eastern Europe and the Middle East, we and our service providers are vulnerable to heightened risks of cybersecurity incidents and security and privacy breaches from or affiliated with nation-state actors, including attacks that could materially disrupt our systems, operations and services.
Our solutions, platforms, and system, and those of our service providers, are subject to security incidents as a result of technical and non-technical issues, including intentional or inadvertent acts or omissions by our employees or service providers. With the increase in personnel working remotely, at least part-time in our case, we and our service providers are at increased risk for security breaches and incidents. We have taken and intend to continue to take steps to monitor and enhance the security of our solutions, cloud platform, and other relevant systems, IT infrastructure, networks, and data; however, the unprecedented scale of remote work may require additional personnel and resources, which nevertheless cannot be guaranteed to fully safeguard our solutions, our cloud platform, or any systems, IT infrastructure networks, or data upon which we rely. Further, because our operations involve providing IT security solutions to our customers, we are targeted for cyber-attacks and other security incidents. A breach in or incident impacting our data security, an attack against our service availability, or any breach, incident, or attack impacting our third-party service providers, could impact our networks or networks secured by our solutions, creating system disruptions or slowdowns and exploiting security vulnerabilities of our solutions, and the information stored on our networks or those of our third-party service providers could be accessed, used, publicly disclosed, altered, lost, or stolen, which could subject us to liability and cause us financial harm. If an actual or perceived disruption in the availability of our solutions or the breach or other compromise of our security measures or those of our service providers occurs, it could adversely affect the market perception of our solutions, result in a loss of competitive advantage, have a negative impact on our reputation, or result in the loss of customers, channel partners and sales, and it may expose us to the loss, unavailability or alteration of information, claims, demands and litigation, regulatory investigations, actions and other proceedings and possible liability. Any such actual or perceived security breach or incident or disruption could also divert the efforts of our technical and management personnel. We and our service providers may face difficulties or delays in identifying and responding to any security breach or incident. We also may incur significant costs and operational consequences of investigating, remediating, eliminating and putting in place additional tools and devices designed to prevent actual or perceived security incidents, as well as costs to respond to and otherwise address any breach or incident, including any to comply with any notification obligations resulting from any security incidents. In addition, any such actual or perceived security breach or incident could impair our ability to operate our business and provide solutions to our customers. If this happens, our reputation could be harmed, our revenues could decline and our business could suffer.
41

Although we maintain insurance coverage that may be applicable to certain liabilities in the event of a security breach or other security incident, we cannot be certain that our insurance coverage will be adequate for liabilities that actually are incurred, that insurance will continue to be available to us on economically reasonable terms, or at all, or that any insurer will not deny coverage as to any future claim. The successful assertion of one or more large claims against us that exceed available insurance coverage or the occurrence of changes in our insurance policies, including premium increases or the imposition of large deductible or co-insurance requirements, could have a material and adverse effect on our business, including our financial condition, operating results and reputation.
Our sales cycle can be long and unpredictable, and our sales efforts require considerable time and expense. As a result, revenues may vary from period to period, which may cause our operating results to fluctuate and could harm our business.
The timing of sales of subscriptions for our solutions can be difficult to forecast because of the length and unpredictability of our sales cycle, particularly with large transactions and in the current macroeconomic environment. We sell subscriptions to our IT, security and compliance solutions primarily to IT departments that are managing a growing set of user and compliance demands, which has increased the complexity of customer requirements to be met and confirmed during the sales cycle and prolonged our sales cycle. Further, the length of time that potential customers devote to their testing and evaluation, contract negotiation and budgeting processes varies significantly, which has also made our sales cycle long and unpredictable. The length of the sales cycle for our solutions typically ranges from six to twelve months but can be more than eighteen months. In addition, we might devote substantial time and effort to a particular unsuccessful sales effort, and as a result we could lose other sales opportunities or incur expenses that are not offset by an increase in revenues, which could harm our business.
Adverse economic conditions or reduced IT spending may adversely impact our business.
Our business depends to a significant extent on the overall demand for IT and on the economic health of our current and prospective customers. Economic weakness, customer financial difficulties, change in interest rates, inflationary pressures and potential for a recession, and constrained spending on IT security, as well as longer sales cycles, which factors we have experienced in 2023 and into 2024, have resulted and may in the future result in decreased revenue and earnings. In addition, continued governmental budgetary challenges in the United States and Europe, inflationary pressures and potential for a recession, and geopolitical turmoil in many parts of the world, including the ongoing military conflicts in parts of Eastern Europe and the Middle East, and other disruptions to global and regional economies and markets in many parts of the world, as well as uncertainties related to changes in public policies such as domestic and international regulations, taxes or international trade agreements, have and may continue to put pressure on global economic conditions and overall spending on IT security and may further increase inflation, both in the U.S. and globally, which could increase our operating costs in the future and reduce overall spending on IT security. General economic weakness may also lead to longer collection cycles for payments due from our customers, an increase in customer bad debt, restructuring initiatives and associated expenses, and impairment of investments. Furthermore, the continued weakness and uncertainty in worldwide credit markets, including the sovereign debt situation in certain countries in the European Union, may adversely impact our European operations, as well as our current and potential customers' available budgetary spending, which could lead to delays or reductions in planned purchases of our solutions.
Uncertainty about future economic conditions also makes it difficult to forecast operating results and to make decisions about future investments. Future or continued economic weakness for us or our customers, failure of our customers and markets to recover from such weakness, customer financial difficulties, and reductions in spending on IT security could have a material adverse effect on demand for our platform and consequently on our business, financial condition and results of operations.
42

Our IT, security and compliance solutions are delivered from 14 shared cloud platforms, and any disruption of service at these facilities would interrupt or delay our ability to deliver our solutions to our customers which could reduce our revenues and harm our operating results.
We currently host substantially all of our solutions from third-party shared cloud platforms located in the United States, Canada, Switzerland, the Netherlands, United Arab Emirates, Australia, United Kingdom, Italy, the Kingdom of Saudi Arabia and India. These facilities are vulnerable to damage or interruption from earthquakes, hurricanes, floods, fires, cybersecurity attacks, terrorist attacks, employee negligence, power losses, telecommunications failures and similar events. The facilities also could be subject to break-ins, sabotage, intentional acts of vandalism and other misconduct. The occurrence of a natural disaster, an act of terrorism or misconduct, a decision to close the facilities without adequate notice or other unanticipated problems could result in interruptions in our services.
Some of our shared cloud platforms are not currently redundant and we may not be able to rapidly move our customers from one shared cloud platform to another, which may increase delays in the restoration of our service for our customers if an adverse event occurs. We have added shared cloud platforms to provide additional capacity and to enable disaster recovery. We continue to build out these facilities; however, these additional facilities may not be operational in the anticipated time-frame and we may incur unplanned expenses.
Additionally, our existing shared cloud platform providers have no obligations to renew their agreements with us on commercially reasonable terms, or at all. If we are unable to renew our agreements with the facilities providers on commercially reasonable terms or if in the future we add additional shared cloud platform providers, we may experience costs or downtime in connection with the loss of an existing facility or the transfer to, or addition of, new facilities.
Any disruptions or other performance problems with our solutions could harm our reputation and business and may damage our customers’ businesses. Interruptions in our service delivery might reduce our revenues, cause us to issue credits to customers, subject us to potential liability and cause customers to terminate their subscriptions or not renew their subscriptions.
We face competition in our markets, and we may lack sufficient financial or other resources to maintain or improve our competitive position.
We compete with a large range of established and emerging vulnerability management vendors, compliance vendors and data security vendors in a highly fragmented and competitive environment. We face significant competition for each of our solutions from companies with broad product suites and greater name recognition and resources than we have, as well as from small companies focused on specialized security solutions.
We compete with large and small public companies, such as Broadcom (Symantec Enterprise Security), CrowdStrike, Palo Alto Networks, Rapid7, Tenable Holdings, as well as privately held security providers including Axonius, Checkmarx, Flexera, Invicti, Ivanti, Tanium, HelpSystems (Tripwire), Trustwave Holdings, Veracode and Wiz. We also seek to replace IT, security and compliance solutions that organizations have developed internally. As we continue to extend our cloud platform’s functionality by further developing IT, security and compliance solutions, such as Cybersecurity Asset Management and Patch Management, we expect to face additional competition in these new markets. Our competitors may also attempt to further expand their presence in the IT, security and compliance market and compete more directly against one or more of our solutions.
We believe that the principal competitive factors affecting our markets include product functionality, breadth of offerings, flexibility of delivery models, ease of deployment and use, total cost of ownership, scalability and performance, customer support and the extensibility of our platform. Many of our existing and potential competitors have competitive advantages, including:
greater brand name recognition;
larger sales and marketing budgets and resources;
broader distribution networks and more established relationships with distributors and customers;
access to larger customer bases;
greater customer support resources;
greater resources to make acquisitions;
43

greater resources to develop and introduce products that compete with our solutions;
greater resources to meet relevant regulatory requirements; and
substantially greater financial, technical and other resources.
As a result, our competitors may be able to respond more quickly and effectively than we can to new or changing opportunities, technologies, standards or customer requirements. With the introduction of new technologies, the evolution of our service and new market entrants, we expect competition to intensify in the future.
In addition, some of our larger competitors have substantially broader product offerings and can bundle competing products and services with other software offerings. As a result, customers may choose a bundled product offering from our competitors, even if individual products have more limited functionality than our solutions. These competitors may also offer their products at a lower price as part of this larger sale, which could increase pricing pressure on our solutions and cause the average sales price for our solutions to decline. These larger competitors are also often in a better position to withstand any significant reduction in capital spending and will therefore not be as susceptible to economic downturns.
Furthermore, our current and potential competitors may establish cooperative relationships among themselves or with third parties that may further enhance their resources and product and services offerings in the markets we address. In addition, current or potential competitors may be acquired by third parties with greater available resources. As a result of such relationships and acquisitions, our current or potential competitors might be able to adapt more quickly to new technologies and customer needs, devote greater resources to the promotion or sale of their products and services, initiate or withstand substantial price competition, take advantage of other opportunities more readily or develop and expand their product and service offerings more quickly than we do. For all of these reasons, we may not be able to compete successfully against our current or future competitors.
The sales prices of our solutions are subject to competitive pressures and may decrease, which may reduce our gross profits and adversely impact our financial results.
The sales prices for our solutions may decline for a variety of reasons, including competitive pricing pressures, discounts, a change in our mix of solutions and subscriptions, anticipation of the introduction of new solutions or subscriptions, or promotional programs. Competition continues to increase in the market segments in which we participate, and we expect competition to further increase in the future, thereby leading to increased pricing pressures. Larger competitors with more diverse product and service offerings may reduce the price of products or subscriptions that compete with ours or may bundle them with other products and subscriptions. Additionally, although we price our products and subscriptions worldwide in U.S. Dollars, Euros, British Pounds, Canadian Dollars, Japanese Yen and Indian Rupee, currency fluctuations in certain countries and regions may negatively impact actual prices that partners and customers are willing to pay in those countries and regions, or the effective prices we realize in our reporting currency. We cannot assure you that we will be successful in developing and introducing new offerings with enhanced functionality on a timely basis, or that our new product and subscription offerings, if introduced, will enable us to maintain our prices and gross profits at levels that will allow us to maintain positive gross margins and profitability.
If our solutions fail to help our customers achieve and maintain compliance with regulations and industry standards, our revenues and operating results could be harmed.
We generate a portion of our revenues from solutions that help organizations achieve and maintain compliance with regulations and industry standards. For example, many of our customers subscribe to our IT, security and compliance solutions to help them comply with the security standards developed and maintained by the Payment Card Industry Security Standards Council, or the PCI Council, which apply to companies that store cardholder data. Industry organizations like the PCI Council may significantly change their security standards with little or no notice, including changes that could make their standards more or less onerous for businesses. Governments may also adopt new laws or regulations, or make changes to existing laws or regulations, which could impact the demand for or value of our solutions.
44

If we are unable to adapt our solutions to changing regulatory standards in a timely manner, or if our solutions fail to assist with or expedite our customers’ compliance initiatives, our customers may lose confidence in our solutions and could switch to products offered by our competitors. In addition, if regulations and standards related to data security, vulnerability management and other IT, security and compliance requirements are relaxed or the penalties for non-compliance are changed in a manner that makes them less onerous, our customers may view government and industry regulatory compliance as less critical to their businesses, and our customers may be less willing to purchase our solutions. In any of these cases, our revenues and operating results could be harmed.
If our solutions fail to detect vulnerabilities or incorrectly detect vulnerabilities, our brand and reputation could be harmed, which could have an adverse effect on our business and results of operations.
If our solutions fail to detect vulnerabilities in our customers’ IT infrastructures, or if our solutions fail to identify and respond to new and increasingly complex methods of attacks, our business and reputation may suffer. There is no guarantee that our solutions will detect all vulnerabilities. Additionally, our IT, security and compliance solutions may falsely detect vulnerabilities or threats that do not actually exist. For example, some of our solutions rely on information on attack sources aggregated from third-party data providers who monitor global malicious activity originating from a variety of sources, including anonymous proxies, specific IP addresses, botnets and phishing sites. If the information from these data providers is inaccurate, the potential for false indications of security vulnerabilities increases. These false positives, while typical in the industry, may impair the perceived reliability or usability of our solutions and may therefore adversely impact market acceptance of our solutions and could result in negative publicity, loss of customers and sales, increased costs to remedy any incorrect information or problem, or claims by aggrieved parties. Similar issues may be generated by the misuse of our tools to identify and exploit vulnerabilities.
Further, our solutions sometimes are tested against other security products, and may fail to perform as effectively, or to be perceived as performing as effectively, as competitive products for any number of reasons, including misconfiguration. To the extent current or potential customers, channel partners, or others believe there has been an occurrence of an actual or perceived failure of our solutions to detect a vulnerability or otherwise to function as effectively as competitive products in any particular test, or indicates our solutions do not provide significant value, our business, competitive position, and reputation could be harmed.
In addition, our solutions do not currently extend to cover all mobile and personal devices that employees may bring into an organization. As such, our solutions would not identify or address vulnerabilities in all mobile and personal devices, and our customers’ IT infrastructures may be compromised by attacks that infiltrate their networks through such devices.
An actual or perceived security breach or incident or loss, theft, unavailability or other compromise of the sensitive data of one of our customers, regardless of whether the breach is attributable to the failure of our solutions, could adversely affect the market’s perception of our security solutions.
If we are unable to continue the expansion of our sales force, sales of our solutions and the growth of our business would be harmed.
We believe that our growth will depend, to a significant extent, on our success in recruiting and retaining a sufficient number of qualified sales personnel and their ability to obtain new customers, manage our existing customer base and expand the sales of our newer solutions. We plan to continue to expand our sales force and invest in our sales and marketing activities. Our recent hires and planned hires may not become as productive as quickly as we would like, and we may be unable to hire or retain sufficient numbers of qualified individuals in the future in the competitive markets where we do business. Competition for highly skilled personnel is frequently intense and we may not be able to compete for these employees. If we are unable to recruit and retain a sufficient number of productive sales personnel, sales of our solutions and the growth of our business may be harmed. Additionally, if our efforts do not result in increased revenues, our operating results could be negatively impacted due to the upfront operating expenses associated with expanding our sales force.
45

We rely on third-party channel partners to generate a substantial amount of our revenues, and if we fail to expand and manage our distribution channels, our revenues could decline and our growth prospects could suffer.
Our success significantly depends to a significant extent on establishing and maintaining relationships with a variety of channel partners and we anticipate that we will continue to depend on these partners in order to grow our business. For the nine months ended September 30, 2024, we derived approximately 46% of our revenues from sales of subscriptions for our solutions through channel partners, and the percentage of revenues derived from channel partners may increase in future periods. Our agreements with our channel partners are generally non-exclusive and do not prohibit them from working with our competitors or offering competing solutions, and many of our channel partners have more established relationships with our competitors. If our channel partners choose to place greater emphasis on products of their own or those offered by our competitors, do not effectively market and sell our solutions, or fail to meet the needs of our customers, then our ability to grow our business and sell our solutions may be adversely affected. In addition, the loss of one or more of our larger channel partners, who may cease marketing our solutions with limited or no notice, and our possible inability to replace them, could adversely affect our sales. Moreover, our ability to expand our distribution channels depends in part on our ability to educate our channel partners about our solutions, which can be complex. Our failure to recruit additional channel partners, or any reduction or delay in their sales of our solutions or conflicts between channel sales and our direct sales and marketing activities may harm our results of operations. Even if we are successful, these relationships may not result in greater customer usage of our solutions or increased revenues.
In addition, the financial health of our channel partners and our continuing relationships with them are important to our success. Some of these channel partners may be unable to withstand adverse changes in economic conditions, which could result in insolvency and/or the inability of such distributors to obtain credit to finance purchases of our products and services. In addition, weakness in the end-user market could negatively affect the cash flows of our channel partners who could, in turn, delay paying their obligations to us, which would increase our credit risk exposure. Our business could be harmed if the financial condition of some of these channel partners substantially weakened and we were unable to timely secure replacement channel partners.
A significant portion of our customers, channel partners and employees are located outside of the United States, which subjects us to a number of risks associated with conducting international operations, and if we are unable to successfully manage these risks, our business and operating results could be harmed.
We market and sell subscriptions to our solutions throughout the world and have personnel in many parts of the world. In addition, we have sales offices and research and development facilities outside the United States and we conduct, and expect to continue to conduct, a significant amount of our business with organizations that are located outside the United States, particularly in Europe and Asia. Therefore, we are subject to risks associated with having international sales and worldwide operations, including:
foreign currency exchange fluctuations;
trade and foreign exchange restrictions;
economic or political instability in foreign markets, including as a result of increasing tensions between India and China;
greater difficulty in enforcing contracts, accounts receivable collection and longer collection periods;
changes in regulatory requirements;
tax laws (including U.S. taxes on foreign subsidiaries);
difficulties and costs of staffing and managing foreign operations;
the uncertainty and limitation of protection for intellectual property rights in some countries;
costs of compliance with foreign laws and regulations and the risks and costs of non-compliance with such laws and regulations;
costs of complying with U.S. laws and regulations for foreign operations, including the Foreign Corrupt Practices Act, import and export control laws, tariffs, trade barriers, economic sanctions and other regulatory or contractual limitations on our ability to sell our solutions in certain foreign markets, and the risks and costs of non-compliance;
46

heightened risks of unfair or corrupt business practices in certain geographies and of improper or fraudulent sales arrangements that may impact financial results and result in restatements of, and irregularities in, financial statements;
the potential for political unrest, acts of terrorism, hostilities or war;
management communication and integration problems resulting from cultural differences and geographic dispersion; and
multiple and possibly overlapping tax structures.
Some of our business partners also have international operations and are subject to the risks described above. Even if we are able to successfully manage the risks of international operations, our business may be adversely affected if our business partners are not able to successfully manage these risks.
Our business, including the sales of subscriptions of our solutions, may be subject to foreign governmental regulations, which vary substantially from country to country and change from time to time. Failure to comply with these regulations could adversely affect our business. Further, in many foreign countries it is common for others to engage in business practices that are prohibited by our internal policies and procedures or U.S. regulations applicable to us. Although we have implemented policies and procedures designed to ensure compliance with these laws and policies, there can be no assurance that all of our employees, contractors, channel partners and agents have complied or will comply with these laws and policies. Violations of laws or key control policies by our employees, contractors, channel partners or agents could result in delays in revenue recognition, financial reporting misstatements, fines, penalties or the prohibition of the importation or exportation of our solutions and could have a material adverse effect on our business and results of operations. If we are unable to successfully manage the challenges of international operations, our business and operating results could be adversely affected.
In addition, as of September 30, 2024, approximately 76% of our employees were located outside of the United States, with 68% of our employees located in Pune, India. Accordingly, we are exposed to changes in laws governing our employee relationships in various U.S. and foreign jurisdictions, including laws and regulations regarding wage and hour requirements, fair labor standards, employee data privacy, unemployment tax rates, workers’ compensation rates, citizenship requirements and payroll and other taxes which may have a direct impact on our operating costs. We may continue to expand our international operations and international sales and marketing activities. Expansion in international markets has required, and will continue to require, significant management attention and resources. We may be unable to scale our infrastructure effectively or as quickly as our competitors in these markets and our revenues may not increase to offset any increased costs and operating expenses, which would cause our results to suffer.
We are exposed to fluctuations in currency exchange rates, which could negatively affect our financial condition and results of operations.
Our reporting currency is the U.S. dollar and we generate a majority of our revenues in U.S. dollars. However, for the nine months ended September 30, 2024, we incurred approximately 27% of our expenses in foreign currencies, primarily the Euro, British Pound, and Indian Rupee, principally with respect to salaries and related personnel expenses associated with our European and Indian operations. Additionally, for the nine months ended September 30, 2024, approximately 25% of our revenues were generated in foreign currencies. Accordingly, changes in exchange rates may have a material adverse effect on our business, operating results and financial condition. The exchange rate between the U.S. dollar and foreign currencies has fluctuated substantially in recent years and may continue to fluctuate substantially in the future. We expect that a majority of our revenues will continue to be generated in U.S. dollars for the foreseeable future and that a significant portion of our expenses, including personnel costs, as well as capital and operating expenditures, will continue to be denominated in the Euro, British Pound and Indian Rupee. The result of our operations may be adversely affected by foreign exchange fluctuations.
We use derivative financial instruments to reduce our foreign currency exchange risks. We use foreign currency forward contracts to mitigate the impact of foreign currency fluctuations of certain non-U.S. dollar denominated net asset positions, to date primarily cash, accounts receivable and operating lease liabilities (non-designated), as well as to manage foreign currency fluctuation risk related to forecasted transactions (designated). However, we may not be able to purchase derivative instruments that are adequate to insulate ourselves from foreign currency exchange risks. Additionally, our hedging activities may contribute to increased losses as a result of volatility in foreign currency markets.
47

If the market for cloud solutions for IT, security and compliance does not evolve as we anticipate, our revenues may not grow and our operating results would be harmed.
Our success depends to a significant extent on the willingness of organizations to increase their use of cloud solutions for their IT, security and compliance. Some organizations may be reluctant to use cloud solutions because they have concerns regarding the risks associated with the reliability or security of the technology delivery model associated with these solutions. If other cloud service providers experience security incidents, loss of customer data, disruptions in service delivery or other problems, the market for cloud solutions as a whole, including our solutions, may be negatively impacted. Moreover, organizations that have invested substantial personnel and financial resources to integrate on-premise software into their businesses may be reluctant or unwilling to migrate to a cloud solution. Organizations that use on-premise security products, such as network firewalls, security information and event management products or data loss prevention solutions, may also believe that these products sufficiently protect their IT infrastructure and deliver adequate security. Therefore, they may continue spending their IT security budgets on these products and may not adopt our IT, security and compliance solutions in addition to or as a replacement for such products.
If customers do not recognize the benefits of our cloud solutions over traditional on-premise enterprise software products, and as a result we are unable to increase sales of subscriptions to our solutions, then our revenues may not grow or may decline, and our operating results would be harmed.
Our business and operations have continued to grow since inception, and if we do not appropriately manage any future growth, or are unable to improve our systems and processes, our operating results may be negatively affected.
We have continued to grow over the last several years, with revenues increasing from $411.2 million in 2021 to $554.5 million in 2023, and headcount increasing from 1,498 employees at the beginning of 2021 to 2,378 employees as of September 30, 2024. We rely on information technology systems to help manage critical functions such as order processing, revenue recognition and financial forecasts. To manage any future growth effectively we must continue to improve and expand our IT systems, financial infrastructure, and operating and administrative systems and controls, and continue to manage headcount, capital and processes in an efficient manner. We may not be able to successfully implement improvements to these systems and processes in a timely or efficient manner.
Our failure to improve our systems and processes, or their failure to operate in the intended manner, may result in our inability to manage the growth of our business and to accurately forecast our revenues, expenses and earnings, or to prevent certain losses. In addition, as we continue to grow, our productivity and the quality of our solutions may also be adversely affected if we do not integrate and train our new employees quickly and effectively. Any future growth would add complexity to our organization and require effective coordination across our organization. Failure to manage any future growth effectively could result in increased costs, harm our results of operations and lead to investors losing confidence in our internal systems and processes.
We depend on the continued services and performance of our senior management and other key employees, the loss of any of whom could adversely affect our business, operating results and financial condition.
Our future performance depends to a significant extent on the continued services and continuing contributions of our senior management and other key employees, to execute on our business plan and to identify and pursue new opportunities and product innovations. We do not maintain key-man insurance for any member of our senior management team. Our senior management and key employees are generally employed on an at-will basis, which means that they could terminate their employment with us at any time. From time to time, there may be changes in our senior management team resulting from the termination or departure of executives. The loss of the services of our senior management or other key employees for any reason could significantly delay or prevent the achievement of our development and strategic objectives and harm our business, financial condition and results of operations.
48

If we are unable to hire, retain and motivate qualified personnel, our business may suffer.
Our future success depends, in part, on our ability to continue to attract and retain highly skilled personnel. The loss of the services of any of our key personnel, the inability to attract or retain qualified personnel or delays in hiring required personnel, particularly in engineering and sales, may seriously harm our business, financial condition and results of operations. Any of our employees may terminate their employment at any time. Competition for highly skilled personnel is frequently intense, especially within our industry, and we may not be able to compete for such personnel.
We are required under accounting principles generally accepted in the United States (U.S. GAAP) to recognize compensation expense in our operating results for employee stock-based compensation under our equity grant programs, which may negatively impact our operating results and may increase the pressure to limit stock-based compensation that we might otherwise offer to current or potential employees, thereby potentially harming our ability to attract or retain highly skilled personnel. In addition, to the extent we hire personnel from competitors, we may be subject to allegations that they have been improperly solicited or divulged proprietary or other confidential information, which could result in a diversion of management's time and our resources.
A portion of our revenues are generated by sales to government entities, which are subject to a number of challenges and risks.
Government entities have historically been particularly concerned about adopting cloud-based solutions for their operations, including security solutions, and increasing sales of subscriptions for our solutions to government entities may be more challenging than selling to commercial organizations. Selling to government entities can be highly competitive, expensive and time-consuming, often requiring significant upfront time and expense without any assurance that we will win a sale. We have invested in the creation of a cloud offering certified under the Federal Information Security Management Act for government usage but we cannot be sure that we will continue to sustain or renew this certification, that the government will continue to mandate such certification or that other government agencies or entities will use this cloud offering. Government demand and payment for our solutions may be impacted by public sector budgetary cycles and funding authorizations, with funding reductions or delays adversely affecting public sector demand for our solutions. Government entities may have contractual or other legal rights to terminate contracts with our channel partners for convenience or due to a default, and any such termination may adversely impact our future results of operations. Governments routinely investigate and audit government contractors’ administrative processes, and any unfavorable audit could result in the government refusing to continue buying our solutions, a reduction of revenues or fines or civil or criminal liability if the audit uncovers improper or illegal activities. Any such penalties could adversely impact our results of operations in a material way.
Our success in acquiring and integrating other businesses, products or technologies could impact our financial position.
In order to remain competitive, we have in the past and may in the future seek to acquire additional businesses, products, services or technologies. For example, we acquired certain intellectual property of TotalCloud on August 19, 2021 and certain assets of Blue Hexagon on October 4, 2022. The environment for acquisitions in our industry is very competitive and acquisition candidate purchase prices may exceed what we would prefer to pay. Moreover, achieving the anticipated benefits of past and future acquisitions will depend in part upon whether we can integrate acquired operations, products and technology in a timely and cost-effective manner, and even if we achieve benefits from acquisitions, such acquisitions may still be viewed negatively by customers, financial markets or investors. The acquisition and integration process is complex, expensive and time-consuming, and may cause an interruption of, or loss of momentum in, product development and sales activities and operations of both companies, as well as divert the attention of management, and we may incur substantial cost and expense. We may issue equity securities which could dilute current stockholders’ ownership, incur debt, assume contingent or other liabilities and expend cash in acquisitions, which could negatively impact our financial position, stockholder equity and stock price. We may not find suitable acquisition candidates, and acquisitions we complete may be unsuccessful. If we consummate a transaction, we may be unable to integrate and manage acquired products and businesses effectively or retain key personnel. If we are unable to effectively execute acquisitions, our business, financial condition and operating results could be adversely affected.
49

We rely on software-as-a-service vendors to operate certain functions of our business and any failure of such vendors to provide services to us could adversely impact our business and operations.
We rely on third-party software-as-a-service vendors to operate certain critical functions of our business, including financial management and human resource management. If these services become unavailable due to extended outages or interruptions or because they are no longer available on commercially reasonable terms or prices, our expenses could increase, our ability to manage our finances could be interrupted and our processes for managing sales of our solutions and supporting our customers could be impaired until equivalent services, if available, are identified, obtained and integrated, all of which could harm our business.
Incorrect or improper implementation or use of our solutions could result in customer dissatisfaction and harm our business and reputation.
If our customers are unable to implement our solutions successfully, customer perceptions of our platform and solutions may be impaired or our reputation and brand may suffer. Our customers have in the past inadvertently misused our solutions, which triggered downtime in their internal infrastructure until the problem was resolved. Additionally, any failure to implement and configure our solutions correctly may result in our solutions failing to detect vulnerabilities or compliance issues, or otherwise to perform effectively, and may result in disruptions to our customers’ IT environments and businesses. Any misuse of our solutions, including any failure to implement and configure them appropriately, could result in disruption to our customers’ businesses, customer dissatisfaction, negative impacts on the perceived reliability or effectiveness of our solutions, and claims and litigation, and may result in negative press coverage, negative effects on our reputation and competitive position, a loss of sales, customers, and channel partners, and harm our financial results.
We recognize revenues from subscriptions over the term of the relevant service period, and therefore any decreases or increases in bookings are not immediately reflected in our operating results.
We recognize revenues from subscriptions over the term of the relevant service period, which is typically one year. As a result, most of our reported revenues in each quarter are derived from the recognition of deferred revenues relating to subscriptions entered into during previous quarters. Consequently, a shortfall in demand for our solutions in any period may not significantly reduce our revenues for that period, but could negatively affect revenues in future periods. Accordingly, the effect of significant downturns in bookings may not be fully reflected in our results of operations until future periods. We may be unable to adjust our costs and expenses to compensate for such a potential shortfall in revenues. Our subscription model also makes it difficult for us to rapidly increase our revenues through additional bookings in any period, as revenues are recognized ratably over the subscription period.
Our business is subject to the risks of earthquakes, fire, power outages, floods and other catastrophic events, and to interruption by man-made problems such as terrorism.
A significant natural disaster, such as an earthquake, fire or a flood, or a significant power outage could have a material adverse impact on our business, operating results and financial condition. Our corporate headquarters and a significant portion of our operations are located in the San Francisco Bay Area, a region known for seismic activity. In addition, natural disasters could affect our business partners’ ability to perform services for us on a timely basis. In the event we or our business partners are hindered by any of the events discussed above, our ability to provide our solutions to customers could be delayed, resulting in our missing financial targets, such as revenues and net income, for a particular quarter. Further, if a natural disaster occurs in a region from which we derive a significant portion of our revenues, customers in that region may delay or forego subscriptions of our solutions, which may materially and adversely impact our results of operations for a particular period. In addition, war, acts of terrorism, pandemics or other health emergencies, or responses to these events could cause disruptions in our business or the business of our business partners, customers or the economy as a whole. All of the aforementioned risks may be exacerbated if the disaster recovery plans for us and our suppliers prove to be inadequate. To the extent that any of the above results in delays of customer subscriptions or commercialization of our solutions, our business, financial condition and results of operations could be adversely affected.
50

Risks Related to Intellectual Property, Legal, Tax and Regulatory Matters
Undetected software errors or flaws in our solutions could harm our reputation, decrease market acceptance of our solutions or result in liability.
Our solutions may contain undetected errors or defects when first introduced or as new versions are released. We have experienced these errors or defects in the past in connection with new solutions and solution upgrades and we expect that these errors or defects will be found from time to time in the future in new or enhanced solutions after commercial release of these solutions. Since our customers use our solutions for IT, security and compliance reasons, any errors, defects, disruptions in service or other performance problems with our solutions, or any other failure of our solutions to detect vulnerabilities or compliance problems or otherwise to perform effectively, may result in disruptions or damage to the business of our customers, including security breaches or compliance failures. Additionally, any such issues, or the perception that they have occurred, whether or not relating to any actual or perceived error or defect in our solutions, could hurt our reputation and competitive position and we may incur significant costs, the attention of key personnel could be diverted, our customers may delay or withhold payment to us or elect not to renew, we could face a loss of sales, customers, and channel partners, and other significant problems with our relationships with customers and channel partners may arise. We may also be subject to liability claims for damages related to actual or perceived errors or defects in our solutions. A material liability claim or other occurrence that harms our reputation or decreases market acceptance of our solutions may harm our business, competitive and financial position, and operating results.
Although we maintain insurance coverage that may be applicable to certain liabilities in connection with these matters, we cannot be certain that our insurance coverage will be adequate for liabilities that actually are incurred, that insurance will continue to be available to us on economically reasonable terms, or at all, or that any insurer will not deny coverage as to any future claim. The successful assertion of one or more large claims against us that exceed available insurance coverage or the occurrence of changes in our insurance policies, including premium increases or the imposition of large deductible or co-insurance requirements, could have a material and adverse effect on our business, including our financial condition, operating results and reputation.
Our solutions could be used to collect and store personal information of our customers employees or customers, and therefore privacy and other data handling concerns could result in additional cost and liability to us or inhibit sales of our solutions.
We collect certain personal information of our customers in connection with subscriptions to our solutions. Additionally, the data that our solutions collect to help secure and protect the IT infrastructure of our customers may include additional personal or confidential information of our customers’ employees and their customers, and we may collect, store and otherwise process personal or confidential information more generally in connection with our business and operations. Personal privacy has become a significant issue in the United States and in many other countries where we offer our solutions. The regulatory framework for privacy issues worldwide is currently evolving and is likely to remain uncertain for the foreseeable future. Many federal, state and foreign government bodies and agencies have adopted or are considering adopting laws and regulations regarding the collection, use, disclosure and retention of personal information. In the United States, these include, for example, rules and regulations promulgated under the authority of the Federal Trade Commission, the Health Insurance Portability and Accountability Act of 1996, the Gramm-Leach-Bliley Act, and state breach notification laws. Internationally, virtually every jurisdiction in which we operate has established its own data security and privacy legal framework with which we or our customers must comply.
51

These privacy, data protection and information security laws and regulations may result in ever-increasing regulatory and public scrutiny and escalating levels of enforcement and sanctions. Additionally, new laws and regulations relating to privacy and data protection continue to be proposed and enacted. For example, the European Union has adopted the Global Data Protection Regulation (“GDPR”). This regulation, which took effect in May of 2018, provides for substantial obligations relating to the handling, storage and other processing of data relating to individuals and administrative fines for violations, which can be up to four percent of the previous year’s annual revenue or €20 million, whichever is higher. The GDPR may be subject to new or changing interpretations by courts, and our interpretation of the law and efforts to comply with the rules and regulations of the law may be ruled invalid. Similarly, the California Consumer Privacy Act (“CCPA”) requires covered companies to, among other things, provide certain disclosures to California consumers and affords such consumers rights to opt-out of certain sales of personal information. The CCPA also creates a private right of action for statutory damages for certain breaches of information. Additionally, the California Privacy Rights Act (“CPRA”), was approved by voters in the November 3, 2020 election. The CPRA modified the CCPA significantly, creating obligations relating to consumer data beginning on January 1, 2022, with enforcement authorized as of July 1, 2023. In addition, other states have enacted or proposed legislation that regulates the collection, use, and sale of personal information, including, for example, Washington's My Health, My Data Act and legislation similar to the CCPA adopted in Virginia, Colorado, Utah, Connecticut, Iowa, Indiana, Montana, Tennessee, Oregon, Florida, Delaware, Texas, Kentucky, New Jersey, New Hampshire, Maryland, Minnesota, Nebraska, and Rhode Island. Aspects of the CCPA, CPRA, and these other new and evolving state laws, as well their interpretation and enforcement, remain uncertain. We cannot predict the impact of the CCPA, CPRA, or other evolving privacy and data protection obligations on our business or operations, but they may require us to modify our data processing practices and policies and incur substantial costs and expenses in an effort to comply.
The privacy, data protection, and information security laws and regulations we must comply with also are subject to change. For example, the United Kingdom has enacted a Data Protection Act, and has implemented legislation referred to as the “UK GDPR,” that substantially implement the GDPR in the United Kingdom following the United Kingdom’s exit from the European Union. This legislation provides for substantial penalties for noncompliance of up to the greater of £17.5 million or four percent of the previous year’s annual revenues. While the European Union has deemed the United Kingdom an “adequate country” to which personal data could be exported from the European Economic Area (“EEA”), this decision is required to be renewed after four years of being in effect and may be modified, revoked, or challenged in the interim, creating uncertainty regarding transfers of personal data to the United Kingdom from the EEA. It remains unclear how United Kingdom data protection laws or regulations will develop in the medium to longer term and how data transfers to and from the United Kingdom will be regulated. Additionally, we have self-certified under the EU-U.S. Data Privacy Framework, the Swiss-U.S. Data Privacy Framework, and the United Kingdom extension to the EU-U.S. Data Privacy Framework, and have adopted certain standard contractual clauses approved by the European Commission (“SCCs”) as part of our data processing agreements with regard to certain transfers of personal data from the EEA to the U.S. Both the EU-U.S. Data Privacy Framework and SCCs have, however, been subject to legal challenge. In its July 16, 2020 opinion, the CJEU imposed additional obligations on companies when relying on SCCs to transfer personal data. The European Commission has published revised SCCs addressing the CJEU concerns on June 4, 2021, that are required to be implemented. The United Kingdom has adopted new standard contractual clauses (“UK SCCs”), that became effective as of March 21, 2022, and which also are required to be implemented. The EU-U.S. Data Privacy Framework, Swiss-U.S. Data Privacy Framework, United Kingdom extension to the EU-U.S. Data Privacy Framework, revised SCCs and UK SCCs, guidance and opinions of regulators, and other developments relating to cross-border data transfer may require us to implement additional contractual and technical safeguards for any personal data transferred out of Europe, which may increase compliance costs, lead to increased regulatory scrutiny or liability, and which may adversely impact our business, financial condition and operating results. We may be unsuccessful in maintaining legitimate means for our transfer and receipt of personal data from the EEA, United Kingdom, or Switzerland. We may experience reluctance or refusal by current or prospective European customers to use our products, and we and our customers may face a risk of enforcement actions by data protection authorities relating to personal data transfers to us and by us from the EEA, United Kingdom, and Switzerland. Any such enforcement actions could result in substantial costs and diversion of resources, distract management and technical personnel and negatively affect our business, operating results and financial condition. Some countries also are considering or have passed legislation requiring local storage and processing of data, or similar requirements, which could increase the cost and complexity of delivering our services.
52

In addition to laws and regulations, privacy advocacy and industry groups or other private parties may propose new and different privacy standards that either legally or contractually apply to us. Because the interpretation and application of privacy and data protection laws, regulations, standards and contractual obligations are uncertain, it is possible that they may be interpreted and applied in a manner that is, or perceived to be, inconsistent with our data management practices or the features of our solutions. If so, in addition to the possibility of regulatory investigations and enforcement actions, fines, lawsuits and other claims, other forms of injunctive or operations-limiting relief, and damage to our reputations and loss of goodwill, we could be required to fundamentally change our business activities and practices or modify our solutions and may face limitations in our ability to develop new solutions and features, any of which could have an adverse effect on our business. Any inability to adequately address privacy concerns, even if unfounded, or any actual or perceived inability to comply with applicable privacy or data protection laws, regulations and privacy standards, could result in cost and liability to us, damage our reputation, inhibit sales of subscriptions and harm our business.
Furthermore, the costs of compliance with, and other burdens imposed by, the laws, regulations, and privacy standards that are applicable to the businesses of our customers may limit the use and adoption of, and reduce the overall demand for, our solutions. Privacy concerns, whether valid or not valid, may inhibit market adoption of our solutions particularly in certain industries and foreign countries.
We use AI/machine learning technologies in our solutions that could result in harm to our business and operating results.
We have incorporated and may continue to incorporate additional AI/machine learning solutions and features into our solutions, and these solutions and features may become more important to our operations or to our future growth over time. We expect to rely on AI/machine learning solutions and features to help drive future growth in our business, but there can be no assurance that we will realize the desired or anticipated benefits from AI/machine learning or at all. We may also fail to properly implement or market our AI/machine learning solutions and features. Our competitors or other third parties may incorporate AI/machine learning into their products, offerings, and solutions more quickly or more successfully than us, which could impair our ability to compete effectively and adversely affect our results of operations. Additionally, our offerings based on AI/machine learning may expose us to additional claims, demands and proceedings by private parties and regulatory authorities and subject us to legal liability as well as brand and reputational harm. The legal, regulatory, and policy environments around AI/machine learning are evolving rapidly, and we may become subject to new and evolving legal and other obligations. These and other developments may require us to make significant changes to our use of AI/machine learning, including by limiting or restricting our use of AI/machine learning, and which may require us to make significant changes to our policies and practices, which may necessitate expenditure of significant time, expense, and other resources, AI/machine learning also presents emerging ethical issues that could harm our reputation and business if our use of AI/machine learning becomes controversial.
Our solutions contain third-party open source software components, and our failure to comply with the terms of the underlying open source software licenses could restrict our ability to sell our solutions.
Our solutions contain software licensed to us by third-parties under so-called “open source” licenses, including the GNU General Public License, the GNU Lesser General Public License, the BSD License, the Apache License and others. From time to time, there have been claims against companies that distribute or use open source software in their products and services, asserting that such open source software infringes the claimants’ intellectual property rights. We could be subject to suits by parties claiming that what we believe to be licensed open source software infringes their intellectual property rights. Use and distribution of open source software may entail greater risks than use of third-party commercial software, as open source licensors generally do not provide warranties or other contractual protections regarding infringement claims or the quality of the code. In addition, certain open source licenses require that source code for software programs that are subject to the license be made available to the public and that any modifications or derivative works to such open source software continue to be licensed under the same terms. If we combine our proprietary software with open source software in certain ways, we could, in some circumstances, be required to release the source code of our proprietary software to the public. Disclosing the source code of our proprietary software could make it easier for cyber attackers and other third parties to discover vulnerabilities in or to defeat the protections of our solutions, which could result in our solutions failing to provide our customers with the security they expect from our services. This could harm our business and reputation. Disclosing our proprietary source code also could allow our competitors to create similar products with lower development effort and time and ultimately could result in a loss of sales for us. Any of these events could have a material adverse effect on our business, operating results and financial condition.
53

Although we monitor our use of open source software in an effort both to comply with the terms of the applicable open source licenses and to avoid subjecting our solutions to conditions we do not intend, the terms of many open source licenses have not been interpreted by U.S. courts, and there is a risk that these licenses could be construed in a way that could impose unanticipated conditions or restrictions on our ability to commercialize our solutions. In this event, we could be required to seek licenses from third parties to continue offering our solutions, to make our proprietary code generally available in source code form, to re-engineer our solutions or to discontinue the sale of our solutions if re-engineering could not be accomplished on a timely basis, any of which could adversely affect our business, operating results and financial condition.
We use third-party software and data that may be difficult to replace or cause errors or failures of our solutions that could lead to lost customers or harm to our reputation and our operating results.
We license third-party software as well as security and compliance data from various third parties to deliver our solutions. In the future, this software or data may not be available to us on commercially reasonable terms, or at all. Any loss of the right to use any of this software or data could result in delays in the provisioning of our solutions until equivalent technology or data is either developed by us, or, if available, is identified, obtained and integrated, which could harm our business. In addition, any errors or defects in or failures of this third-party software or data could result in errors or defects in our solutions or cause our solutions to fail, which could harm our business and be costly to correct. Many of these providers attempt to impose limitations on their liability for such errors, defects or failures, and if enforceable, we may have additional liability to our customers or third-party providers that could harm our reputation and increase our operating costs.
We will need to maintain our relationships with third-party software and data providers, and to obtain software and data from such providers that do not contain any errors or defects. Any failure to do so could adversely impact our ability to deliver effective solutions to our customers and could harm our operating results.
Failure to protect our proprietary technology and intellectual property rights could substantially harm our business and operating results.
The success of our business depends in part on our ability to protect and enforce our trade secrets, trademarks, copyrights, patents and other intellectual property rights. We attempt to protect our intellectual property under copyright, trade secret, patent and trademark laws, and through a combination of confidentiality procedures, contractual provisions and other methods, all of which offer only limited protection.
We primarily rely on our unpatented proprietary technology and trade secrets. Despite our efforts to protect our proprietary technology and trade secrets, unauthorized parties may attempt to misappropriate, reverse engineer or otherwise obtain and use them. The contractual provisions that we enter into with employees, consultants, partners, vendors and customers may not prevent unauthorized use or disclosure of our proprietary technology or intellectual property rights and may not provide an adequate remedy in the event of unauthorized use or disclosure of our proprietary technology or intellectual property rights. Moreover, policing unauthorized use of our technologies, solutions and intellectual property is difficult, expensive and time-consuming, particularly in foreign countries where the laws may not be as protective of intellectual property rights as those in the United States and where mechanisms for enforcement of intellectual property rights may be weak. We may be unable to determine the extent of any unauthorized use or infringement of our solutions, technologies or intellectual property rights.
The process of obtaining patent protection is expensive and time-consuming, and we may not be able to prosecute all necessary or desirable patent applications at a reasonable cost or in a timely manner, if at all. We may choose not to seek patent protection for certain innovations and may choose not to pursue patent protection in certain jurisdictions.
Furthermore, it is possible that our patent applications may not result in granted patents, that the scope of our issued patents will be limited or not provide the coverage originally sought, that our issued patents will not provide us with any competitive advantages, or that our patents and other intellectual property rights may be challenged by others or invalidated through administrative processes or litigation. In addition, issuance of a patent does not guarantee that we have an absolute right to practice the patented invention. As a result, we may not be able to obtain adequate patent protection or to enforce our issued patents effectively.
54

From time to time, legal action by us may be necessary to enforce our patents and other intellectual property rights, to protect our trade secrets, to determine the validity and scope of the intellectual property rights of others or to defend against claims of infringement or invalidity. Such litigation could result in substantial costs and diversion of resources and could negatively affect our business, operating results and financial condition. If we are unable to protect our intellectual property rights, we may find ourselves at a competitive disadvantage to others who need not incur the additional expense, time and effort required to create the innovative solutions that have enabled us to be successful to date.
Assertions by third parties of infringement or other violations by us of their intellectual property rights could result in significant costs and harm our business and operating results.
Patent and other intellectual property disputes are common in our industry. Some companies, including some of our competitors, own large numbers of patents, copyrights and trademarks, which they may use to assert claims against us. Third parties may in the future assert claims of infringement, misappropriation or other violations of intellectual property rights against us. They may also assert such claims against our customers or channel partners whom we typically indemnify against claims that our solutions infringe, misappropriate or otherwise violate the intellectual property rights of third parties. As the numbers of products and competitors in our market increase and overlaps occur, claims of infringement, misappropriation and other violations of intellectual property rights may increase. Any claim of infringement, misappropriation or other violation of intellectual property rights by a third party, even those without merit, could cause us to incur substantial costs defending against the claim and could distract our management from our business.
The patent portfolios of our most significant competitors are larger than ours. This disparity may increase the risk that they may sue us for patent infringement and may limit our ability to counterclaim for patent infringement or settle through patent cross-licenses. In addition, future assertions of patent rights by third parties, and any resulting litigation, may involve patent holding companies or other adverse patent owners who have no relevant product revenues and against whom our own patents may therefore provide little or no deterrence or protection. There can be no assurance that we will not be found to infringe or otherwise violate any third-party intellectual property rights or to have done so in the past.
An adverse outcome of a dispute may require us to:
pay substantial damages, including treble damages, if we are found to have willfully infringed a third party’s patents or copyrights;
cease making, licensing or using solutions that are alleged to infringe or misappropriate the intellectual property of others;
expend additional development resources to attempt to redesign our solutions or otherwise develop non-infringing technology, which may not be successful;
enter into potentially unfavorable royalty or license agreements in order to obtain the right to use necessary technologies or intellectual property rights; and
indemnify our partners and other third parties.
In addition, royalty or licensing agreements, if required or desirable, may be unavailable on terms acceptable to us, or at all, and may require significant royalty payments and other expenditures. Some licenses may also be non-exclusive, and therefore our competitors may have access to the same technology licensed to us. Any of the foregoing events could seriously harm our business, financial condition and results of operations.
Governmental export or import controls could subject us to liability if we violate them or limit our ability to compete in foreign markets.
Our solutions are subject to U.S. export controls, specifically, the Export Administration Regulations and economic sanctions enforced by the Office of Foreign Assets Control. We incorporate encryption technology into certain of our solutions. These encryption solutions and the underlying technology may be exported only with the required export authorizations, including by license, a license exception or other appropriate government authorizations. U.S. export controls may require submission of an encryption registration, product classification and/or annual or semi-annual reports. Governmental regulation of encryption technology and regulation of imports or exports of encryption products, or our failure to obtain required import or export authorization for our solutions, when applicable, could harm our international sales and adversely affect our revenues. Compliance with applicable regulatory requirements regarding the export of our solutions, including with respect to new releases of our solutions, may create delays in the introduction of our solutions in international markets, prevent our customers with international operations from deploying our solutions throughout their
55

globally-distributed systems or, in some cases, prevent the export of our solutions to some countries altogether. In addition, various countries regulate the import of our appliance-based solutions and have enacted laws that could limit our ability to distribute solutions or could limit our customers’ ability to implement our solutions in those countries. Any new export or import restrictions, new legislation or shifting approaches in the enforcement or scope of existing regulations, or in the countries, persons or technologies targeted by such regulations, could result in decreased use of our solutions by existing customers with international operations, declining adoption of our solutions by new customers with international operations and decreased revenues. If we fail to comply with export and import regulations, we may be fined or other penalties could be imposed, including denial of certain export privileges.
If we are required to collect higher sales and use or other taxes on the solutions we sell, we may be subject to liability for past sales and our future sales may decrease.
Taxing jurisdictions, including state and local entities, have differing rules and regulations governing sales and use or other taxes, and these rules and regulations are subject to varying interpretations that may change over time. In particular, the applicability of sales taxes to our subscription services in various jurisdictions is unclear. It is possible that we could face sales tax audits and that our liability for these taxes could exceed our estimates as tax authorities could still assert that we are obligated to collect additional amounts as taxes from our customers and remit those taxes to those authorities. We could also be subject to audits with respect to state and international jurisdictions for which we may not have accrued tax liabilities. A successful assertion that we should be collecting additional sales or other taxes on our services in jurisdictions where we have not historically done so and do not accrue for sales taxes could result in substantial tax liabilities for past sales, discourage customers from purchasing our solutions or otherwise harm our business and operating results.
Changes in our income tax provision or adverse outcomes resulting from examination of our income tax returns could adversely affect our operating results. We could be subject to additional taxes.
We are subject to income taxes in the United States and various foreign jurisdictions, and our domestic and international tax liabilities are subject to the allocation of expenses in differing jurisdictions. Our tax rate is affected by changes in the mix of earnings and losses in countries with differing statutory tax rates, certain non-deductible expenses, excess tax benefits arising from stock-based compensation, other tax benefits and credits, and the valuation of deferred tax assets and liabilities. Increases in our effective tax rate could harm our operating results.
Additionally, significant judgment is required in evaluating our tax positions and our worldwide tax provisions. During the ordinary course of business, there are many activities and transactions for which the ultimate tax determination is uncertain. In addition, our tax obligations and effective tax rates could be adversely affected by changes in the relevant tax, accounting and other laws, regulations, principles and interpretations, including those relating to income tax nexus, by recognizing tax losses or lower than anticipated earnings in jurisdictions where we have lower statutory rates and higher than anticipated earnings in jurisdictions where we have higher statutory rates, by changes in foreign currency exchange rates, or by changes in the valuation of our deferred tax assets and liabilities. The Tax Cuts and Jobs Act of 2017 introduced a Base Erosion and Anti-Abuse Tax which imposes a minimum tax on adjusted income of corporations with average applicable gross receipt of at least $500 million for prior three tax years and that make certain payments to related foreign persons. While these rules do not impact our results of operations in the current year, these could impact our financial results in future periods. The Organization for Economic Cooperation and Development has issued model rules in connection with the Base Erosion and Profit Shifting integrated framework that determine multi-jurisdictional taxing rights (Pillar One) and the minimum rate of tax applicable to certain types of income (Pillar Two). Many countries have enacted legislation to apply the Pillar Two directive for tax years beginning in January 2024, which generally provides for a minimum effective tax rate of 15% on the income arising in each jurisdiction where the Company operates. We do not anticipate these rules to have an impact on our current year’s financial results. If applicable in the future, these could have an impact on our financial results, the extent of which is currently uncertain. We may be audited in various jurisdictions, and such jurisdictions may assess additional taxes, sales taxes and value-added taxes against us. Although we believe our tax estimates are reasonable, the final determination of any tax audits or litigation could be materially different from our historical tax provisions and accruals, which could have a material adverse effect on our operating results or cash flows in the period or periods for which a determination is made.
56

Risks Related to Ownership of Our Common Stock
Market volatility may affect our stock price and the value of an investment in our common stock and could subject us to litigation.
The trading price of our common stock has been, and may continue to be, subject to significant fluctuations in response to a number of factors, most of which we cannot predict or control, including:
announcements of new solutions, services or technologies, commercial relationships, acquisitions or other events by us or our competitors;
fluctuations in stock market prices and trading volumes of securities of similar companies;
general market conditions and overall fluctuations in U.S. equity markets;
variations in our operating results, or the operating results of our competitors;
changes in our financial guidance or securities analysts’ estimates of our financial performance;
changes in accounting principles;
sales of large blocks of our common stock, including sales by our executive officers, directors and significant stockholders;
additions or departures of any of our key personnel;
announcements related to litigation;
changing legal or regulatory developments in the United States and other countries; and
discussion of us or our stock price by the financial press and in online investor communities.
In addition, the stock market in general, and the stocks of technology companies such as ours in particular, have experienced substantial price and volume volatility that is often seemingly unrelated to the operating performance of particular companies. These broad market fluctuations may cause the trading price of our common stock to decline. In the past, securities class action litigation has often been brought against a company after a period of volatility in the trading price of its common stock. We may become involved in this type of litigation in the future. Any securities litigation claims brought against us could result in substantial expenses and the diversion of our management’s attention from our business.
Our actual operating results may differ significantly from our guidance.
From time to time, we have released, and may continue to release, guidance in our quarterly earnings conference calls, quarterly earnings releases, or otherwise, regarding our future performance that represents our management's estimates as of the date of release. This guidance, which includes forward-looking statements, has been and will be based on projections prepared by our management. These projections are not prepared with a view toward compliance with published guidelines of the American Institute of Certified Public Accountants, and neither our registered public accountants nor any other independent expert or outside party compiles or examines the projections. Accordingly, no such person expresses any opinion or any other form of assurance with respect to the projections.
Projections are based upon a number of assumptions and estimates that, while presented with numerical specificity, are inherently subject to significant business, economic and competitive uncertainties and contingencies, many of which are beyond our control and are based upon specific assumptions with respect to future business decisions, some of which will change. We intend to state possible outcomes as high and low ranges which are intended to provide a sensitivity analysis as variables are changed but are not intended to imply that actual results could not fall outside of the suggested ranges. The principal reason that we release guidance is to provide a basis for our management to discuss our business outlook with analysts and investors. We do not accept any responsibility for any projections or reports published by any such third parties.
Guidance is necessarily speculative in nature, and it can be expected that some or all of the assumptions underlying the guidance furnished by us will not materialize or will vary significantly from actual results. Accordingly, our guidance is only an estimate of what management believes is realizable as of the date of release. Actual results may vary from our guidance and the variations may be material. In light of the foregoing, investors are urged not to rely upon our guidance in making an investment decision regarding our common stock.
57

Any failure to successfully implement our operating strategy or the occurrence of any of the events or circumstances set forth in this “Risk Factors” section in this Quarterly Report on Form 10-Q could result in our actual operating results being different from our guidance, and the differences may be adverse and material.
Future sales of shares by existing stockholders could cause our stock price to decline.
The market price of shares of our common stock could decline as a result of substantial sales of our common stock, particularly sales by our directors, executive officers, employees and significant stockholders, a large number of shares of our common stock becoming available for sale, or the perception in the market that holders of a large number of shares intend to sell their shares. As of September 30, 2024, we had approximately 36.6 million shares of our common stock outstanding.
In addition, as of September 30, 2024, there were approximately 1.4 million options and 1.0 million restricted stock units outstanding. If such options are exercised and restricted stock units are released, these additional shares will become available for sale. As of September 30, 2024, we had an aggregate of 2.6 million shares of our common stock reserved for future issuance under our Restated 2012 Equity Incentive Plan and 0.4 million shares reserved for future purchase under our 2021 Employee Stock Purchase Plan, which can be freely sold in the public market upon issuance. If a large number of these shares are sold in the public market, the sales could reduce the trading price of our common stock.
We cannot guarantee that our share repurchase program will be fully consummated or that it will enhance stockholder value, and any share repurchases we make could affect the price of our common stock.
On February 12, 2018, we announced that our board of directors had authorized a $100.0 million repurchase program. On each of October 30, 2018, October 30, 2019, May 7, 2020, February 10, 2021 and February 9, 2023, we announced that our board of directors had authorized an increase of $100.0 million, and on each of November 3, 2021, May 4, 2022 and February 7, 2024, we announced that our board of directors had authorized an increase of $200.0 million to the share repurchase program, resulting in an aggregate authorization of $1.2 billion as of September 30, 2024. Although our board of directors authorized the share repurchase program, we are not obligated to repurchase any specific dollar amount or to acquire any specific number of shares. The share repurchase program could affect the price of our common stock, increase volatility and diminish our cash reserves. In addition, it may be suspended or terminated at any time, which may result in a decrease in the price of our common stock. Finally, our share repurchases in 2023 and 2024 were subject to the 1% excise tax introduced in the Inflation Reduction Act. The amount of share repurchases subject to the excise tax are reduced by the fair market value of any shares issued during the taxable year. This provision does not currently, nor do we expect it to in the future, have a material impact to our results of operations. During the nine months ended September 30, 2024, we repurchased 0.7 million shares of our common stock for approximately $98.0 million. As of September 30, 2024, approximately $185.7 million remained available for share repurchases pursuant to our share repurchase program.
We do not intend to pay dividends on our common stock and therefore any returns will be limited to the value of our stock.
We have never declared or paid any cash dividend on our common stock. We currently anticipate that we will retain future earnings for the development, operation and expansion of our business and do not anticipate declaring or paying any cash dividends for the foreseeable future. Any return to stockholders will therefore be limited to the value of their stock.
Anti-takeover provisions in our charter documents and under Delaware law could make an acquisition of us, which may be beneficial to our stockholders, more difficult and may prevent attempts by our stockholders to replace or remove our current management.
Our amended and restated certificate of incorporation and amended and restated bylaws contain provisions that may delay or prevent an acquisition of us or a change in our management. These provisions include:
authorizing “blank check” preferred stock, which could be issued by our board of directors without stockholder approval and may contain voting, liquidation, dividend and other rights superior to our common stock, which would increase the number of outstanding shares and could thwart a takeover attempt;
a classified board of directors whose members can only be dismissed for cause;
the prohibition on actions by written consent of our stockholders;
58

the limitation on who may call a special meeting of stockholders;
the establishment of advance notice requirements for nominations for election to our board of directors or for proposing matters that can be acted upon at stockholder meetings; and
the requirement of at least two-thirds of the outstanding capital stock to amend any of the foregoing second through fifth provisions.
In addition, because we are incorporated in Delaware, we are governed by the provisions of Section 203 of the Delaware General Corporation Law, which limits the ability of stockholders owning in excess of 15% of our outstanding voting stock to merge or combine with us. Although we believe these provisions collectively provide for an opportunity to obtain greater value for stockholders by requiring potential acquirers to negotiate with our board of directors, they would apply even if an offer rejected by our board of directors were considered beneficial by some stockholders. In addition, these provisions may frustrate or prevent any attempts by our stockholders to replace or remove our current management by making it more difficult for stockholders to replace members of our board of directors, which is responsible for appointing the members of our management.
General Risk Factors
Disruptive technologies could gain wide adoption and supplant our cloud-based IT, security and compliance solutions, thereby weakening our sales and harming our results of operations.
The introduction of products and services embodying new technologies could render our existing solutions obsolete or less attractive to customers. Our business could be harmed if new IT, security and compliance technologies are widely adopted. We may not be able to successfully anticipate or adapt to changing technology or customer requirements on a timely basis, or at all. If we fail to keep up with technological changes or to convince our customers and potential customers of the value of our solutions even in light of new technologies, our business could be harmed and our revenues may decline.
We may not maintain profitability in the future.
We may not be able to sustain or increase our growth or maintain profitability in the future. We plan to continue to invest in our infrastructure, new solutions, research and development and sales and marketing, and as a result, we cannot assure you that we will maintain profitability. We may incur losses in the future for a number of reasons, including without limitation, the other risks and uncertainties described in this Quarterly Report on Form 10-Q. Additionally, we may encounter unforeseen operating expenses, difficulties, complications, delays and other unknown factors that may result in losses in future periods. If our revenue growth does not meet our expectations in future periods, our financial performance may be harmed and we may not again achieve or maintain profitability in the future.
Forecasts of market growth may prove to be inaccurate, and even if the markets in which we compete achieve the forecasted growth, there can be no assurance that our business will grow at similar rates, or at all.
Growth forecasts relating to the expected growth in the market for IT, security and compliance and other markets are subject to significant uncertainty and are based on assumptions and estimates which may prove to be inaccurate. Even if these markets experience the forecasted growth, we may not grow our business at similar rates, or at all. Our growth is subject to many factors, including our success in implementing our business strategy, which is subject to many risks and uncertainties. Accordingly, forecasts of market growth should not be taken as indicative of our future growth.
Our financial results are based in part on our estimates or judgments relating to our critical accounting policies. These estimates or judgments may prove to be incorrect, which could harm our operating results and result in a decline in our stock price.
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, as provided in the section titled “Part I, Item 2 - Management’s Discussion and Analysis of Financial Condition and Results of Operations,” the results of which form the basis for making judgments about the carrying values of assets, liabilities, equity, revenues and expenses that are not readily apparent from other sources. Our operating results may be adversely affected if our assumptions change or if actual circumstances differ from those in our assumptions, which
59

could cause our operating results to fall below the expectations of securities analysts and investors, resulting in a decline in our stock price. Significant assumptions and estimates used in preparing our condensed consolidated financial statements include those related to revenue recognition, accounting for income taxes and stock-based compensation.
Changes in financial accounting standards may cause adverse and unexpected revenue fluctuations and impact our reported results of operations.
We prepare our financial statements in accordance with U.S. GAAP. These principles are subject to interpretation by the SEC and various bodies formed to interpret and create appropriate accounting principles. A change in these accounting standards or practices could harm our operating results and could have a significant effect on our reporting of transactions and reported results and may even retroactively affect previously reported transactions. New accounting pronouncements and varying interpretations of accounting pronouncements have occurred and may occur in the future. Changes to existing rules or the questioning of current practices may harm our operating results or require that we make significant changes to our systems, processes and controls or the way we conduct our business.
If we fail to maintain an effective system of internal control over financial reporting, our ability to produce timely and accurate financial statements or comply with applicable regulations could be impaired.
As a public company, we are subject to the reporting requirements of the Securities Exchange Act of 1934, or the Exchange Act, the Sarbanes-Oxley Act of 2002, or the Sarbanes-Oxley Act, and the rules and regulations of the NASDAQ Stock Market. To continue to comply with the requirements of being a public company, we may need to undertake various actions, such as implementing additional internal controls and procedures and hiring additional accounting or internal audit staff.
Our internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements in accordance with U.S. GAAP. Our current controls and any new controls that we develop may become inadequate because of changes in conditions in our business. Any failure to maintain effective controls, or any difficulties encountered in their improvement, could harm our operating results or cause us to fail to meet our reporting obligations. Any failure to maintain effective internal control over financial reporting also could adversely affect the results of periodic management evaluations regarding the effectiveness of our internal control over financial reporting that we are required to include in our periodic reports we file with the SEC under Section 404 of the Sarbanes-Oxley Act. While we were able to assert in our Annual Report on Form 10-K that our internal control over financial reporting was effective as of December 31, 2023, we cannot predict the outcome of our testing in future periods. If we are unable to assert in any future reporting period that our internal control over financial reporting is effective (or if our independent registered public accounting firm is unable to express an opinion on the effectiveness of our internal controls), investors may lose confidence in our operating results and our stock price could decline. In addition, if we are unable to continue to meet these requirements, we may not be able to remain listed on the NASDAQ Stock Market.
Item 2.                                  Unregistered Sales of Equity Securities and Use of Proceeds
A summary of our repurchases of common stock during the three months ended September 30, 2024 is as follows:

PeriodTotal Number of Shares PurchasedAverage Price Paid per Share
Total Number of Shares Purchased
as Part of Publicly Announced Plan
or Program (1)
Approximate
Dollar Value of
Shares that May
Yet Be Purchased under the Plan or
Program
July 1 - July 31, 202491,747$143.94 91,747$217,458,637 
August 1 - August 31, 2024132,000$127.04 132,000$200,689,380 
September 1 - September 30, 2024120,267$124.47 120,267$185,719,490 
Total344,014344,014 
(1) On February 12, 2018, we announced that our board of directors authorized a $100.0 million share repurchase program. On each of October 30, 2018, October 30, 2019, May 7, 2020, February 10, 2021 and February 9, 2023, we announced that our board of directors had authorized an increase of $100.0 million, and on each of November 3, 2021,
60

May 4, 2022 and February 7, 2024, we announced that our board of directors had authorized an increase of $200.0 million to the share repurchase program, resulting in an aggregate authorization of $1.2 billion as of September 30, 2024. Shares may be repurchased from time to time on the open market in accordance with Rule 10b-18 of the Exchange Act of 1934. We have entered into a pre-set trading plan adopted in accordance with Rule 10b5-1 under the Exchange Act to effect repurchases under our share repurchase program. All share repurchases have been made using cash resources. Our share repurchase program does not have an expiration date.
Item 3.                                  Defaults upon Senior Securities
None.
Item 4.                                  Mine Safety Disclosures
None.
Item 5.                                  Other Information
Securities Trading Plans of Directors and Executive Officers
On August 16, 2024, Jeffrey P. Hank, the chair of our board of directors, modified his existing Rule 10b5-1 trading arrangement dated November 21, 2023 (the “Original Plan”), which has the effect of terminating the Original Plan and adopting a new Rule 10b5-1 trading arrangement (the “New Plan”). The New Plan provides for the sale from time to time of an aggregate of up to 8,850 shares of our common stock plus an additional number of shares to be acquired on the date of the Company's 2025 Annual Meeting of Stockholders. Pursuant to the Company's non-employee director compensation program, each non-employee director who has served on our board of directors for at least six months prior to such date will be granted an annual award of restricted stock units on such day. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the New Plan is until June 30, 2025, or earlier if all transactions under the trading arrangement are completed.
On August 21, 2024, Joo Mi Kim, our Chief Financial Officer, adopted a Rule 10b5-1 trading arrangement providing for the sale from time to time of an aggregate of up to 54,319 shares of our common stock, which represents the gross number of shares authorized to be sold during the duration of the plan, before excluding any shares withheld by the company to satisfy its income tax withholding in connection with the net settlement of the equity awards. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the trading arrangement is until November 20, 2025, or earlier if all transactions under the trading arrangement are completed.
On August 21, 2024, Bruce Posey, our Chief Legal Officer, adopted a Rule 10b5-1 trading arrangement providing for the sale from time to time of an aggregate of up to 54,586 shares of our common stock, which represents the gross number of shares authorized to be sold during the duration of the plan, before excluding any shares withheld by the company to satisfy its income tax withholding in connection with the net settlement of the equity awards. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the trading arrangement is until December 2, 2025, or earlier if all transactions under the trading arrangement are completed.
No other director or officer, as defined in Rule 16a-1(f), adopted or terminated a “Rule 10b5-1 trading arrangement” or a “non-Rule 10b5-1 trading arrangement,” each as defined in Regulation S-K Item 408, during the three months ended September 30, 2024.
61

Item 6.                                  Exhibits
Exhibit NumberDescription
31.1
31.2
32.1^
32.2^
101 INSInline XBRL Instance Document - the instance document does not appear in the interactive data file because its XBRL tags are embedded within the inline XBRL document.
101 SCHInline XBRL Taxonomy Extension Schema Document
101 CALInline XBRL Taxonomy Extension Calculation Linkbase Document.
101 DEFInline XBRL Taxonomy Extension Definition Linkbase Document.
101 LABInline XBRL Taxonomy Extension Labels Linkbase Document.
101 PREInline XBRL Taxonomy Extension Presentation Linkbase Document.
104Cover Page Interactive Data File - the cover page interactive data is embedded within the Inline XBRL document or included within Exhibit 101 attachments.
*    Indicates a management contract or compensatory plan or arrangement.
^Exhibits 32.1 and 32.2 are being furnished and shall not be deemed to be “filed” for purposes of Section 18 of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), or otherwise subject to the liability of that section, nor shall such exhibits be deemed to be incorporated by reference in any registration statement or other document filed under the Securities Act of 1933, as amended, or the Exchange Act, except as otherwise specifically stated in such filing.
62

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, in the City of Foster City, State of California on November 5, 2024.
QUALYS, INC.
By:/s/ JOO MI KIM
Name: Joo Mi Kim
Title: Chief Financial Officer
(principal financial and accounting officer)
63
EX-31.1 2 qlys-20240930xex311.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION OF CHIEF EXECUTIVE OFFICER
PURSUANT TO RULE 13a-14(a) OR RULE 15d-14(a)
OF THE SECURITIES EXCHANGE ACT OF 1934
I, Sumedh S. Thakar, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Qualys, 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 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 and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):
(a)All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and
(b)Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.
Date:
November 5, 2024
By:
/s/ SUMEDH S. THAKAR
Sumedh S. Thakar
President and Chief Executive Officer
(principal executive officer)
Qualys, Inc.

EX-31.2 3 qlys-20240930xex312.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION OF CHIEF FINANCIAL OFFICER
PURSUANT TO RULE 13a-14(a) OR RULE 15d-14(a)
OF THE SECURITIES EXCHANGE ACT OF 1934
I, Joo Mi Kim, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Qualys, 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 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 and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):
(a)All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and
(b)Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.
Date:
November 5, 2024
By:/s/ JOO MI KIM
Joo Mi Kim
Chief Financial Officer
(principal financial and accounting officer)
Qualys, Inc.

EX-32.1 4 qlys-20240930xex321.htm EX-32.1 Document

Exhibit 32.1
CERTIFICATION OF CHIEF EXECUTIVE OFFICER
PURSUANT TO RULE 13a-14(b) OR RULE 15d-14(b)
OF THE SECURITIES EXCHANGE ACT OF 1934 AND 18 U.S.C. SECTION 1350
In connection with the Quarterly Report of Qualys, Inc. (the “Company”) on Form 10-Q for the quarter ended September 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Sumedh S. Thakar, President and Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge:
(1)The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
(2)The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
Date:
November 5, 2024
By:
/s/ SUMEDH S. THAKAR
Sumedh S. Thakar
President and Chief Executive Officer
(principal executive officer)
Qualys, Inc.

EX-32.2 5 qlys-20240930xex322.htm EX-32.2 Document

Exhibit 32.2
CERTIFICATION OF CHIEF FINANCIAL OFFICER
PURSUANT TO RULE 13a-14(b) OR RULE 15d-14(b)
OF THE SECURITIES EXCHANGE ACT OF 1934 AND 18 U.S.C. SECTION 1350
In connection with the Quarterly Report of Qualys, Inc. (the “Company”) on Form 10-Q for the quarter ended September 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Joo Mi Kim, Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge:
(1)The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
(2)The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
Date:
November 5, 2024
By:/s/ JOO MI KIM
Joo Mi Kim
Chief Financial Officer
(principal financial and accounting officer)
Qualys, Inc.

EX-101.SCH 6 qlys-20240930.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 9952151 - Statement - Condensed Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 9952152 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 9952153 - Statement - Condensed Consolidated Statements of Operations link:presentationLink link:calculationLink link:definitionLink 9952154 - Statement - Condensed Consolidated Statements of Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 9952155 - Statement - Condensed Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 9952156 - Statement - Condensed Consolidated Statements of Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 9952157 - Disclosure - Description of Business and Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 9952158 - Disclosure - Fair Value of Financial Instruments link:presentationLink link:calculationLink link:definitionLink 9952159 - Disclosure - Accumulated Other Comprehensive Income (Loss) link:presentationLink link:calculationLink link:definitionLink 9952160 - Disclosure - Property and Equipment, Net link:presentationLink link:calculationLink link:definitionLink 9952161 - Disclosure - Revenue from Contracts with Customers link:presentationLink link:calculationLink link:definitionLink 9952162 - Disclosure - Intangible Assets, Net link:presentationLink link:calculationLink link:definitionLink 9952163 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 9952164 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 9952165 - Disclosure - Stockholders' Equity and Stock-based Compensation link:presentationLink link:calculationLink link:definitionLink 9952166 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 9952167 - Disclosure - Segment and Geographic Area Information link:presentationLink link:calculationLink link:definitionLink 9952168 - Disclosure - Net Income Per Share link:presentationLink link:calculationLink link:definitionLink 9954471 - Disclosure - Description of Business and Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9954472 - Disclosure - Fair Value of Financial Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954473 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables) link:presentationLink link:calculationLink link:definitionLink 9954474 - Disclosure - Property and Equipment, Net (Tables) link:presentationLink link:calculationLink link:definitionLink 9954475 - Disclosure - Revenue from Contracts with Customers (Tables) link:presentationLink link:calculationLink link:definitionLink 9954476 - Disclosure - Intangible Assets, Net (Tables) link:presentationLink link:calculationLink link:definitionLink 9954477 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 9954478 - Disclosure - Stockholders' Equity and Stock-based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954479 - Disclosure - Segment and Geographic Area Information (Tables) link:presentationLink link:calculationLink link:definitionLink 9954480 - Disclosure - Net Income Per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954481 - Disclosure - Fair Value of Financial Instruments - Assets and Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Fair Value of Financial Instruments - Cash and Cash Equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 9954483 - Disclosure - Fair Value of Financial Instruments - Summary of Securities in Unrealized Loss Positions (Details) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Fair Value of Financial Instruments - Summary of the Fair Value of Marketable Securities (Details) link:presentationLink link:calculationLink link:definitionLink 9954485 - Disclosure - Fair Value of Financial Instruments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Fair Value of Financial Instruments - Summary of Derivative Financial Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Fair Value of Financial Instruments - Amounts Recognized In Statement of Operations (Details) link:presentationLink link:calculationLink link:definitionLink 9954488 - Disclosure - Accumulated Other Comprehensive Income (Loss) - Components and Changes (Details) link:presentationLink link:calculationLink link:definitionLink 9954489 - Disclosure - Accumulated Other Comprehensive Income (Loss) - Amounts Reclassified from AOCI (Details) link:presentationLink link:calculationLink link:definitionLink 9954490 - Disclosure - Property and Equipment, Net - Property and Equipment, Net (Details) link:presentationLink link:calculationLink link:definitionLink 9954491 - Disclosure - Property and Equipment, Net - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954492 - Disclosure - Revenue from Contracts with Customers - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954494 - Disclosure - Revenue from Contracts with Customers - Revenue by Sales Channel (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Revenue from Contracts with Customers - Capitalized Cost to Obtain Contracts, Current and Noncurrent (Details) link:presentationLink link:calculationLink link:definitionLink 9954496 - Disclosure - Intangible Assets, Net- Carrying Value of Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954497 - Disclosure - Intangible Assets, Net - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954498 - Disclosure - Intangible Assets, Net - Expected Amortization Expense in Future Periods (Details) link:presentationLink link:calculationLink link:definitionLink 9954499 - Disclosure - Leases - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954500 - Disclosure - Leases - Supplemental Cash Flow Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954501 - Disclosure - Leases- Weighted Average Remaining Lease Term and Weighted Average Discount Rate (Details) link:presentationLink link:calculationLink link:definitionLink 9954502 - Disclosure - Leases - Minimum Annual Lease Payments (Details) link:presentationLink link:calculationLink link:definitionLink 9954502 - Disclosure - Leases - Minimum Annual Lease Payments (Details) link:presentationLink link:calculationLink link:definitionLink 9954503 - Disclosure - Stockholders' Equity and Stock-based Compensation - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954504 - Disclosure - Stockholders' Equity and Stock-based Compensation - Share-based Compensation and Stock Options Activity (Details) link:presentationLink link:calculationLink link:definitionLink 9954505 - Disclosure - Stockholders' Equity and Stock-based Compensation - Summary of Restricted Stock Unit Activity (Details) link:presentationLink link:calculationLink link:definitionLink 9954506 - Disclosure - Stockholders' Equity and Stock-based Compensation - Summary of Stock-based Compensation Expense (Details) link:presentationLink link:calculationLink link:definitionLink 9954507 - Disclosure - Stockholders' Equity and Stock-based Compensation - Schedule of Repurchase Agreements (Details) link:presentationLink link:calculationLink link:definitionLink 9954508 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 9954509 - Disclosure - Segment and Geographic Area Information - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954510 - Disclosure - Segment and Geographic Area Information - Revenue and Property and Equipment, Net by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 9954511 - Disclosure - Net Income Per Share - Basic and Diluted Net Income Per Share (Details) link:presentationLink link:calculationLink link:definitionLink 9954512 - Disclosure - Net Income Per Share - Anti-dilutive Net Income Per Share (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 qlys-20240930_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 qlys-20240930_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 qlys-20240930_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT U.S. Treasury and government agencies US Government Corporations and Agencies Securities [Member] Vested and expected to vest as of September 30, 2024 Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term Adjustments to reconcile net income to net cash provided by operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Statistical Measurement [Domain] Statistical Measurement [Domain] Authorized repurchase amount remaining Share Repurchase Program, Remaining Authorized, Amount Unrealized Losses Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax Schedule of Lease Cost Lease, Cost [Table Text Block] Cover [Abstract] Cover [Abstract] Net increase in cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Current Capitalized Contract Cost, Net, Current Schedule of Lease Maturities Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Unrecognized tax benefits effecting the tax rate Unrecognized Tax Benefits that Would Impact Effective Tax Rate Trading Symbol Trading Symbol Accumulated Other Comprehensive Income (Loss) Accumulated Other Comprehensive Income Disclosure [Text Block] The entire note disclosure of accumulated other comprehensive income. All Trading Arrangements All Trading Arrangements [Member] Compensation Actually Paid vs. Net Income Compensation Actually Paid vs. Net Income [Text Block] Non-NEOs Non-NEOs [Member] Schedule of Earnings Per Share, Basic and Diluted Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Vesting period (in years) Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Authorized Dollar Value Stock Repurchase Program [Roll Forward] Stock Repurchase Program Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] Fair Value Debt Securities, Held-to-Maturity, Fair Value [Abstract] Awards Close in Time to MNPI Disclosures Awards Close in Time to MNPI Disclosures [Table] Pay vs Performance Disclosure [Line Items] Partner Sales Channel, Through Intermediary [Member] Assembled workforce Assembled Workforce [Member] Represents Assembled Workforce. Peer Group Total Shareholder Return Amount Peer Group Total Shareholder Return Amount Short-term marketable securities Short-Term Investments [Member] Cash equivalents Cash Equivalents [Member] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Accounts receivable Increase (Decrease) in Accounts Receivable Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Hedging Relationship [Domain] Hedging Relationship [Domain] Fair Value of Financial Instruments Fair Value Disclosures [Text Block] Proceeds from exercise of stock options Proceeds from Stock Options Exercised Award Timing Disclosures [Line Items] Schedule of Share Repurchase Program Share Repurchase Program [Table Text Block] Tabular disclosure of share repurchase program. Other Performance Measure, Amount Other Performance Measure, Amount 2027 Finite-Lived Intangible Asset, Expected Amortization, Year Three Joo Mi Kim [Member] Joo Mi Kim Common stock, shares outstanding (in shares) Common Stock, Shares, Outstanding Sales and maturities of marketable securities Proceeds from Sale and Maturity of Marketable Securities Shares available for grant (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant Operating lease liabilities, noncurrent Operating Lease, Liability, Noncurrent Cash Flow Hedging Cash Flow Hedging [Member] Contract with Customer, Sales Channel [Axis] Contract with Customer, Sales Channel [Axis] Deferred revenues, current Contract with Customer, Liability, Current Plan Name [Domain] Plan Name [Domain] United States UNITED STATES Less than 12 months Debt Securities, Current [Abstract] Other noncurrent assets Other Assets, Noncurrent Entity Tax Identification Number Entity Tax Identification Number Leases [Abstract] Cost Finite-Lived Intangible Assets, Gross Schedule of Finite-Lived Intangible Assets [Table] Intangible Asset, Finite-Lived [Table] Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Noncurrent Capitalized Contract Cost, Net, Noncurrent Money market funds Money Market Funds [Member] Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Patent licenses Patents [Member] Cash flow from operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Schedule of Derivative Instruments Schedule of Derivative Instruments [Table Text Block] Net income per share: Earnings Per Share Reconciliation [Abstract] Schedule of Accumulated Other Comprehensive Income (Loss) Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block] Plan Name [Axis] Plan Name [Axis] Corporate bonds Financial Instruments, Owned, Corporate Debt, at Fair Value Equity Components [Axis] Equity Components [Axis] Award Timing Method Award Timing Method [Text Block] Trading Arrangements, by Individual Trading Arrangements, by Individual [Table] Weighted average exercise price, exercisable (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Exercise Price Measurement Frequency [Axis] Measurement Frequency [Axis] Issuance of common stock upon vesting of restricted stock units (in shares) Issuance of common stock upon vesting of restricted stock units (in shares) Number of shares issued during period for restricted stock vested. Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Insider Trading Policies and Procedures [Line Items] Use of Estimates Use of Estimates, Policy [Policy Text Block] Amount reclassified into income during the period Reclassification from AOCI, Current Period, before Tax, Attributable to Parent Adjustment to Compensation, Amount Adjustment to Compensation Amount Balance Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value Compensation Amount Outstanding Recovery Compensation Amount Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member] Entity Small Business Entity Small Business Developed technology Developed Technology Rights [Member] Company Selected Measure Amount Company Selected Measure Amount Geographical [Axis] Geographical [Axis] Tabular List, Table Tabular List [Table Text Block] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost [Abstract] Sales and marketing Selling and Marketing Expense [Member] Repurchase of common stock Stock Repurchased During Period, Value Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member] Foreign currency forward contracts, asset Foreign Currency Contract, Asset, Fair Value Disclosure Issuance of common stock through employee stock purchase plan (in shares) Stock Issued During Period, Shares, Employee Stock Purchase Plans Accrued liabilities Accrued Liabilities, Current Total anti-dilutive shares (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Lease expense Operating Lease, Expense Schedule of Expected Revenue from Performance Obligations Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block] Fair Value Debt Securities, Available-for-Sale, Unrealized Loss Position Original Plan [Member] Original Plan Accretion of discount on marketable securities, net Accretion (Amortization) of Discounts and Premiums, Investments Stock-based compensation expenses, unrecognized Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Current assets: Assets, Current [Abstract] Goodwill Goodwill Accounts receivable, net of allowance Accounts Receivable, Allowance for Credit Loss Employee stock purchase plan (in shares) Incremental Common Shares Attributable to Dilutive Effect of Equity Unit Purchase Agreements Indefinite-Lived Intangible Assets, Major Class Name [Domain] Indefinite-Lived Intangible Assets, Major Class Name [Domain] Payments for taxes related to net share settlement of equity awards Payment, Tax Withholding, Share-Based Payment Arrangement Stock repurchase program, authorized amount Share Repurchase Program, Authorized, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Stock options Share-Based Payment Arrangement, Option [Member] Vested (in USD 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 Fair Value Disclosures [Abstract] 2025 Lessee, Operating Lease, Liability, to be Paid, Year One Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Antidilutive Security, Excluded EPS Calculation [Table] Comprehensive income Comprehensive Income (Loss), Net of Tax, Attributable to Parent Preferred stock, shares outstanding (in shares) Preferred Stock, Shares Outstanding Security Exchange Name Security Exchange Name Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost, Excluding Accrued Interest, after Allowance for Credit Loss Schedule of the Fair Value of Cash Equivalents and Marketable Securities by Contractual Maturity Investments Classified by Contractual Maturity Date [Table Text Block] Award Type [Axis] Award Type [Axis] Corporate bonds Corporate Debt Securities [Member] Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block] Reclassification out of Accumulated Other Comprehensive Income Reclassification out of Accumulated Other Comprehensive Income [Member] Exercised (in USD per share) Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Total Debt Securities [Abstract] Direct Sales Channel, Directly to Consumer [Member] Amortization expense related to deferred costs Amortization of Deferred Sales Commissions Outstanding RSUs Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Property and equipment, net Property and equipment, net Property, Plant and Equipment, Net Total liabilities Liabilities Total Long-lived Assets Long-Lived Assets Foreign currency forward contracts Foreign currency forward contracts, liability Foreign Currency Contracts, Liability, Fair Value Disclosure Common stock, par value (in USD per share) Common Stock, Par or Stated Value Per Share Forgone Recovery, Explanation of Impracticability Forgone Recovery, Explanation of Impracticability [Text Block] Research and development Research and development Research and Development Expense Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Expiration Date Trading Arrangement Expiration Date Cash flow from investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Goodwill and Intangible Assets Disclosure [Abstract] Tax effect Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent Operating lease liabilities, current Operating Lease, Liability, Current Total Shareholder Return Amount Total Shareholder Return Amount Common stock, shares issued (in shares) Common Stock, Shares, Issued Schedule of Deferred Costs to Obtain Contracts Contract With Customer, Commission Asset Balances [Table Text Block] Tabular disclosure of commission asset balance of contract with customer. Equity Awards Adjustments, Footnote Equity Awards Adjustments, Footnote [Text Block] Rest of world Other Geographic Areas [Member] Represents information related to other geographic areas. U.S. Treasury and government agencies US Government Agencies Securities, at Carrying Value Computer equipment Computer Equipment [Member] Gross Unrealized Losses Debt Securities, Available-for-Sale, Unrealized Loss Position, Accumulated Loss Insider Trading Policies and Procedures Adopted Insider Trading Policies and Procedures Adopted [Flag] Less: accumulated depreciation and amortization Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Cash, excluded Cash Schedule of Cash Equivalents and Marketable Securities Cash And Cash Equivalents And Debt Securities, Available-For-Sale, Amortized Cost To Fair Value [Table Text Block] Tabular disclosure of cash and cash equivalents and debt securities available-for-sale amortized cost to fair value. Computer equipment Property, Plant and Equipment, Gross Carrying value of accounts receivable Accounts Receivable, after Allowance for Credit Loss Issuance of common stock upon exercise of stock options (in shares) Exercised (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Named Executive Officers, Footnote Named Executive Officers, Footnote [Text Block] Research and development Research and Development Expense [Member] Weighted Average Exercise Price Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract] Common stock, shares authorized (in shares) Common Stock, Shares Authorized New Plan [Member] New Plan Commercial paper Commercial Paper, Not Included with Cash and Cash Equivalents [Member] Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Net change in unrealized gains on available-for-sale debt securities, net of tax OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax Diluted (in shares) Diluted weighted average shares (in shares) Weighted Average Number of Shares Outstanding, Diluted MNPI Disclosure Timed for Compensation Value MNPI Disclosure Timed for Compensation Value [Flag] 2024 (remaining three months) Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year AOCI Attributable to Parent, Net of Tax [Roll Forward] AOCI Attributable to Parent, Net of Tax [Roll Forward] Numerator: Net Income (Loss) Available to Common Stockholders, Basic [Abstract] Total stockholders’ equity Beginning balance Ending balance Equity, Attributable to Parent Due within One Year Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One Hedging Designation [Domain] Hedging Designation [Domain] Property and Equipment, Net Property, Plant and Equipment Disclosure [Text Block] Payment of acquisition-related holdback Payment for Contingent Consideration Liability, Financing Activities Asset-backed securities Debt Securities, Available-for-Sale, Maturity, without Single Maturity Date, Amortized Cost Other comprehensive income, net of tax Other comprehensive income (loss), net of tax Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Fair Value, Recurring Fair Value, Recurring [Member] Accounts receivable, net of allowance of $1,154 and $778 as of September 30, 2024 and December 31, 2023, respectively Accounts Receivable, after Allowance for Credit Loss, Current Bruce Posey [Member] Bruce Posey Cost of revenues Cost of Sales [Member] Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross Revenues from External Customers and Long-Lived Assets [Line Items] Revenues from External Customers and Long-Lived Assets [Line Items] Jeffrey P. Hank [Member] Jeffrey P. Hank Fair Value Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Shares authorized for issuance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized Pension Adjustments Prior Service Cost Pension Adjustments Prior Service Cost [Member] Document Fiscal Period Focus Document Fiscal Period Focus Other comprehensive income (loss), net of tax Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent, Alternative [Abstract] All Executive Categories All Executive Categories [Member] Stock options (in shares) Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements Aggregate Intrinsic Value Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Aggregate Intrinsic Value [Abstract] Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Aggregate Intrinsic Value [Abstract] 2026 Finite-Lived Intangible Asset, Expected Amortization, Year Two Available-for-Sale Debt Securities AOCI, Accumulated Gain (Loss), Debt Securities, Available-for-Sale, Parent [Member] Changed Peer Group, Footnote Changed Peer Group, Footnote [Text Block] Balance Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term Assets Assets [Abstract] Offering period (in months) qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod Represents the offering period under a share-based payment arrangement. Restricted cash Restricted Cash, Current Document Type Document Type Derivative Contract [Domain] Derivative Contract [Domain] Commercial paper Commercial Paper [Member] Pension Benefits Adjustments, Footnote Pension Benefits Adjustments, Footnote [Text Block] Total Shareholder Return Vs Peer Group Total Shareholder Return Vs Peer Group [Text Block] Computer software Computer Software, Intangible Asset [Member] Cash, cash equivalents and restricted cash at beginning of period Cash, cash equivalents and restricted cash at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations Purchases of marketable securities Payments to Acquire Marketable Securities Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Executive Officer 1 Executive Officer 1 [Member] Represents executive officer 1. Schedule of Finite-Lived Intangible Assets, Future Amortization Expense Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Intangible assets not subject to amortization Indefinite-Lived Intangible Assets (Excluding Goodwill) Maximum Maximum [Member] Intangible asset amortization expense Amortization of Intangible Assets Deferred revenue Contract with Customer, Liability Equity Valuation Assumption Difference, Footnote Equity Valuation Assumption Difference, Footnote [Text Block] Total intangibles Finite-Lived Intangible Assets, Net Furniture, fixtures and equipment Furniture and Fixtures [Member] Antidilutive Securities [Axis] Antidilutive Securities [Axis] Foreign Non-US [Member] Accounts payable Accounts Payable, Current Accounting Policies [Abstract] Accounting Policies [Abstract] Leasehold improvements Leasehold Improvements [Member] Current Fiscal Year End Date Current Fiscal Year End Date Less: interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Statistical Measurement [Axis] Statistical Measurement [Axis] PEO Name PEO Name Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Income before income taxes Total Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Vesting range (percentage) qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardTargetPercentage The target percentage for vesting of equity-based award under share based payment arrangement. Non-PEO NEO Average Total Compensation Amount Non-PEO NEO Average Total Compensation Amount Award Type [Domain] Award Type [Domain] Name Outstanding Recovery, Individual Name Schedule of Potentially Dilutive Shares Excluded from Diluted Net Income Per Share Calculation Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block] Compensation Actually Paid vs. Company Selected Measure Compensation Actually Paid vs. Company Selected Measure [Text Block] Money market funds Money Market Funds, at Carrying Value Deferred tax assets, net Deferred Income Tax Assets, Net Non-PEO NEO Non-PEO NEO [Member] Title of Individual [Axis] Title and Position [Axis] Weighted Average Life (Years) Finite-Lived Intangible Asset, Useful Life Additional Paid-In Capital Additional Paid-in Capital [Member] Hedging Relationship [Axis] Hedging Relationship [Axis] Award Timing Predetermined Award Timing Predetermined [Flag] Scanner appliances Scanner Appliances [Member] Represents information related to scanner appliances. The 2012 Equity Incentive Plan The 2012 Equity Incentive Plan [Member] Represents plan 2012. Recently Adopted Accounting Pronouncements and Recently Issued Accounting Pronouncements Not Yet Adopted New Accounting Pronouncements, Policy [Policy Text Block] Diluted (in USD per share) Earnings Per Share, Diluted Title of Individual [Domain] Title and Position [Domain] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Name Measure Name Entity Interactive Data Current Entity Interactive Data Current Deferred revenues Increase (Decrease) in Contract with Customer, Liability Restatement does not require Recovery Restatement Does Not Require Recovery [Text Block] Exercisable as of September 30, 2024 Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Remaining Contractual Term Scanner Appliances and Other Computer Equipment Scanner Appliances and Other Computer Equipment Subject To Subscription [Member] Represents information related to scanner appliances and other computer equipment subject to subscription. Number of operating segments Number of Operating Segments Total foreign exchange gains (losses), net Gain (Loss), Foreign Currency Transaction, before Tax Preferred stock, shares issued (in shares) Preferred Stock, Shares Issued 12 months or longer Debt Securities, Noncurrent [Abstract] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Asset-backed securities Asset-Backed Securities [Member] Stock-based compensation, net of amounts capitalized Share-Based Payment Arrangement, Noncash Expense Sales and marketing Sales and marketing Selling and Marketing Expense Executive Officer 2 Executive Officer 2 [Member] Represents executive officer 2. Income tax provision Income Tax Expense (Benefit) Other income (expense), net: Nonoperating Income (Expense) [Abstract] Derivative Derivative, Notional Amount Canceled (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period Stockholders' Equity and Stock-based Compensation Shareholders' Equity and Share-Based Payments [Text Block] Stock-based compensation, recognition period (in years) Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Scanner Appliances and Other Computer Equipment Not Placed In Service Scanner Appliances and Other Computer Equipment Not Placed In Service [Member] Represents scanner appliances and other computer equipment not placed in service. Revenues Revenue from Contract with Customer, Excluding Assessed Tax Schedule of Gains (Losses) Recognized from Forward Contracts and Other Foreign Currency Transactions in Other Income (Expense) Derivative Instruments, Gain (Loss) [Table Text Block] Total other income, net Nonoperating Income (Expense) Reclassification out of Accumulated Other Comprehensive Income [Domain] Reclassification out of Accumulated Other Comprehensive Income [Domain] Statement of Comprehensive Income [Abstract] Income tax rate, percentage Effective Income Tax Rate Reconciliation, Percent Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Income from operations Operating Income (Loss) Share-based compensation, additional shares available (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized Number of reportable segments Number of Reportable Segments Total liabilities and stockholders’ equity Liabilities and Equity Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] All Adjustments to Compensation All Adjustments to Compensation [Member] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Prepaid expenses and other assets Increase (Decrease) in Prepaid Expense and Other Assets Additional paid-in capital Additional Paid in Capital Hedging Designation [Axis] Hedging Designation [Axis] Long-term marketable securities Debt Securities, Available-for-Sale, Amortized Cost, Excluding Accrued Interest, after Allowance for Credit Loss, Noncurrent Accumulated Other Comprehensive Income (Loss) [Line Items] Accumulated Other Comprehensive Income (Loss) [Line Items] Commitments and Contingencies Disclosure [Abstract] Interest income Investment Income, Interest Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Schedule of RSU Activity Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block] Lease liabilities arising from obtaining right-of-use assets Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Underlying Security Market Price Change Underlying Security Market Price Change, Percent Individual: Individual [Axis] Taxes related to net share settlement of equity awards Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation Accumulated Other Comprehensive Income (Loss) Total AOCI Attributable to Parent [Member] Remaining performance obligation, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Cash Flow Hedges Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member] U.S. Treasury and government agencies US Government Agencies Debt Securities [Member] Foreign currency forward contracts Financial Instruments, Owned, Derivatives and Other Contractual Agreements, at Fair Value Entity Address, State or Province Entity Address, State or Province Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Statement [Line Items] Statement [Line Items] Erroneous Compensation Analysis Erroneous Compensation Analysis [Text Block] Operating expenses: Operating Expenses [Abstract] Schedule of Property, Plant and Equipment, Net Property, Plant and Equipment [Table Text Block] Compensation Actually Paid vs. Total Shareholder Return Compensation Actually Paid vs. Total Shareholder Return [Text Block] Executive Officer 4 Executive Officer 4 [Member] Represents executive 4. Financial Instruments [Domain] Financial Instruments [Domain] Beginning balance (in USD per share) Ending balance (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Liabilities and Stockholders’ Equity Liabilities and Equity [Abstract] Minimum Minimum [Member] Restatement Determination Date Restatement Determination Date Vested and expected to vest (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number Foreign Exchange Contracts for GBP and Euro Foreign Exchange Contracts for GBP and Euro [Member] Information related to foreign exchange contracts for BPG and Euro. Adoption Date Trading Arrangement Adoption Date Pay vs Performance Disclosure Pay vs Performance Disclosure [Table] Deferred revenues, noncurrent Contract with Customer, Liability, Noncurrent Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Beginning balance (in USD per share) Ending balance (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price Operating leases - right of use asset Operating Lease, Right-of-Use Asset Erroneously Awarded Compensation Recovery Erroneously Awarded Compensation Recovery [Table] Beginning balance (in shares) Ending balance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number Provision for credit losses Accounts Receivable, Credit Loss Expense (Reversal) Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member] Derivative Instrument [Axis] Derivative Instrument [Axis] Property, Plant and Equipment [Abstract] Exercise Price Award Exercise Price Executive Officer 3 Executive Officer 3 [Member] Represents executive officer 3. Total liabilities Financial Liabilities Fair Value Disclosure Net Income Per Share Earnings Per Share [Text Block] Arrangement Duration Trading Arrangement Duration Issuance of common stock through employee stock purchase plan Stock Issued During Period, Value, Employee Stock Purchase Plan Issuance of common stock upon exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Stockholders’ equity: Equity, Attributable to Parent [Abstract] Granted (in USD 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 Fair Value Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months Investments Investments Peer Group Issuers, Footnote Peer Group Issuers, Footnote [Text Block] Material Terms of Trading Arrangement Material Terms of Trading Arrangement [Text Block] All Individuals All Individuals [Member] Executive Officer Executive Officer [Member] Description of Business and Summary of Significant Accounting Policies Basis of Presentation and Significant Accounting Policies [Text Block] Leases Lessee, Operating Leases and Finance Lease [Text Block] The entire disclosure of operating lease and finance lease for lessee. PEO PEO [Member] Income Tax Disclosure [Abstract] Name Trading Arrangement, Individual Name Other income (expense), net Other Nonoperating Income (Expense) Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Intangible assets, net Intangible assets, net Intangible Assets, Net (Excluding Goodwill) Long-Lived Tangible Asset [Axis] Long-Lived Tangible Asset [Axis] Unrealized Gains Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax Outstanding options, exercisable (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number Outstanding and expected to vest (in USD per share) Expected to vest, weighted average grant date fair value (in dollars per share) Represents weighted average exercise for share-based compensation arrangement by share-based payment award for equity instruments other than options, expected to vest. ESPP eligible percent to contribute qlys_EmployeeStockPurchasePlanPercentageOfEligibleCompensationContributable Represents the percentage of employee's eligible compensation that can be used to contribute, through payroll withholding, to an employee stock purchase plan. Awards Close in Time to MNPI Disclosures, Table Awards Close in Time to MNPI Disclosures [Table Text Block] 2029 and thereafter Lessee, Operating Lease, Liability, to be Paid, after Year Four Lessee, Operating Lease, Liability, to be Paid, after Year Four Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member] Beginning balance (in shares) Ending balance (in shares) Shares, Outstanding Impairment loss related to deferred contract costs Capitalized Contract Cost, Impairment Loss Aggregate Erroneous Compensation Amount Aggregate Erroneous Compensation Amount Net gains (losses) from non-designated forward contracts Gain (Loss) on Foreign Currency Derivative Instruments Not Designated as Hedging Instruments Local Phone Number Local Phone Number Aggregate Erroneous Compensation Not Yet Determined Aggregate Erroneous Compensation Not Yet Determined [Text Block] Total assets Financial Instruments, Owned, at Fair Value Total operating expenses Operating Expenses Repurchase of common stock (in shares) Stock Repurchased During Period, Shares Weighted Average Remaining Contractual Life Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract] Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] PEO Total Compensation Amount PEO Total Compensation Amount Purchase price of stock, percentage Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent Performance-based Restricted Stock Units Performance-based Restricted Stock Units [Member] Information related to performance-based restricted stock units. Fair Value Fair Value Debt Securities, Available-for-Sale, Excluding Accrued Interest Long-Lived Tangible Asset [Domain] Long-Lived Tangible Asset [Domain] Income Statement Location [Axis] Statement of Income Location, Balance [Axis] Vested and expected to vest (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Common Stock Common Stock [Member] Measure: Measure [Axis] Asset Class [Domain] Asset Class [Domain] Preferred stock, shares authorized (in shares) Preferred Stock, Shares Authorized Forgone Recovery due to Expense of Enforcement, Amount Forgone Recovery due to Expense of Enforcement, Amount Asset-backed securities Asset-Backed Securities, at Carrying Value Entity Emerging Growth Company Entity Emerging Growth Company Indefinite-Lived Intangible Assets [Axis] Indefinite-Lived Intangible Assets [Axis] Segment Reporting [Abstract] Taxes related to net share settlement of equity awards (in shares) Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation Entity Central Index Key Entity Central Index Key General and administrative General and Administrative Expense [Member] Non-GAAP Measure Description Non-GAAP Measure Description [Text Block] Non-PEO NEO Average Compensation Actually Paid Amount Non-PEO NEO Average Compensation Actually Paid Amount Outstanding and expected to vest (in shares) Expected to vest, number of shares (in shares) Represents vested and expected to vest outstanding number Intangible assets not subject to amortization Intangible Assets Not Subject to Amortization [Member] Represents intangible assets not subject to amortization. Award Timing, How MNPI Considered Award Timing, How MNPI Considered [Text Block] Equity Component [Domain] Equity Component [Domain] Preferred stock, par value (in USD per share) Preferred Stock, Par or Stated Value Per Share Financial Instrument [Axis] Financial Instrument [Axis] Segment and Geographic Area Information Segment Reporting Disclosure [Text Block] Additional 402(v) Disclosure Additional 402(v) Disclosure [Text Block] Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Entity Shell Company Entity Shell Company Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Title Trading Arrangement, Individual Title Statement [Table] Statement [Table] Measurement Frequency [Domain] Measurement Frequency [Domain] Unrecognized tax benefits Unrecognized Tax Benefits Denominator: Net Income (Loss) Available to Common Stockholders, Diluted [Abstract] Reclassification of AOCI - Cash flow hedges AOCI Attributable to Parent [Abstract] City Area Code City Area Code Current liabilities: Liabilities, Current [Abstract] India INDIA Total property and equipment Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization Insider Trading Policies and Procedures Not Adopted Insider Trading Policies and Procedures Not Adopted [Text Block] Other foreign currency transactions gains (losses) Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Level 1 Fair Value, Inputs, Level 1 [Member] Total current assets Assets, Current Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Repurchase of common stock Payments for Repurchase of Common Stock Weighted Average Grant Date Fair Value Per Share Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Accumulated Other Comprehensive Income (Loss) [Table] Accumulated Other Comprehensive Income (Loss) [Table] Due after Five Years through Ten Years Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, after Year 5 Through 10 Shares repurchased and retired Stock Repurchased and Retired During Period, Value Income Taxes Income Tax Disclosure [Text Block] Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract] 2028 Lessee, Operating Lease, Liability, to be Paid, Year Four Net income per share: Earnings Per Share [Abstract] Equity [Abstract] Accumulated deficit Retained Earnings (Accumulated Deficit) Schedule of Amounts Reclassified from AOCI to the Statements of Operations Reclassification out of Accumulated Other Comprehensive Income [Table Text Block] Shares repurchased and retired (in shares) Stock Repurchased and Retired During Period, Shares Long-term marketable securities Other Long-Term Investments [Member] Canceled (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price General and administrative General and administrative General and Administrative Expense Deferred income taxes Deferred Income Taxes and Tax Credits Loss on non-marketable securities Equity Securities, FV-NI, Unrealized Gain (Loss) Aggregate Available Trading Arrangement, Securities Aggregate Available Amount Equity Awards Adjustments Equity Awards Adjustments [Member] Weighted average discount rate Operating Lease, Weighted Average Discount Rate, Percent Present value of net minimum lease payments Operating Lease, Liability Net cash used in financing activities Net Cash Provided by (Used in) Financing Activities Underlying Securities Award Underlying Securities Amount Additional authorized amount Additional Authorized Dollar Value Amount of additional stock repurchase plan authorized 1. Amendment Flag Amendment Flag Entity Registrant Name Entity Registrant Name Adjustment to Non-PEO NEO Compensation Footnote Adjustment to Non-PEO NEO Compensation Footnote [Text Block] Stock Appreciation Rights (SARs) Stock Appreciation Rights (SARs) [Member] Depreciation and amortization expense Depreciation, Depletion and Amortization Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Gross profit Gross Profit Retired stock units (in shares) Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants Reclassification out of Accumulated Other Comprehensive Income [Axis] Reclassification out of Accumulated Other Comprehensive Income [Axis] Intangible Assets, Net Intangible Assets Disclosure [Text Block] Fair Value as of Grant Date Award Grant Date Fair Value Vested and expected to vest as of September 30, 2024 Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value Level 2 Fair Value, Inputs, Level 2 [Member] Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Geographical [Domain] Geographical [Domain] ESPP Shares ESPP Shares [Member] Represents information regarding ESPP shares. Recovery of Erroneously Awarded Compensation Disclosure [Line Items] Schedule of Revenue by Sales Channel Disaggregation of Revenue [Table Text Block] Short-term marketable securities Debt Securities, Available-for-Sale, Excluding Accrued Interest, Current Entity Address, Postal Zip Code Entity Address, Postal Zip Code Schedule of Stock-Based Compensation Expense in Statements of Operations Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Restatement Determination Date: Restatement Determination Date [Axis] Title of 12(b) Security Title of 12(b) Security Common stock: $0.001 par value; 1,000,000 shares authorized, 36,640 and 36,909 shares issued and outstanding as of September 30, 2024 and December 31, 2023, respectively Common Stock, Value, Issued Depreciation and amortization qlys_DepreciationDepletionAndAmortizationExcludingIntangibleAssetAmortization Represents amount of depreciation, depletion and amortization excluding intangible asset amortization. Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member] Exercisable as of September 30, 2024 Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Aggregate Intrinsic Value Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Forfeited (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value Unrealized loss Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months Cash flow from financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member] Preferred stock: $0.001 par value; 20,000 shares authorized, no shares issued and outstanding as of September 30, 2024 and December 31, 2023 Preferred Stock, Value, Issued Outstanding Options Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward] Cash and Cash Equivalents [Domain] Cash and Cash Equivalents [Domain] Commercial paper Commercial Paper, at Carrying Value Basic (in USD per share) Earnings Per Share, Basic Accounts payable Increase (Decrease) in Accounts Payable Proceeds from issuance of common stock through employee stock purchase plan Proceeds from Issuance of Common Stock Cash payments included in the measurement of lease liabilities Operating Lease, Payments Adjustment To PEO Compensation, Footnote Adjustment To PEO Compensation, Footnote [Text Block] Award Timing MNPI Disclosure Award Timing MNPI Disclosure [Text Block] Expiration period Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period Aggregate Pension Adjustments Service Cost Aggregate Pension Adjustments Service Cost [Member] Designated as Hedging Instrument Designated as Hedging Instrument [Member] Compensation Actually Paid vs. Other Measure Compensation Actually Paid vs. Other Measure [Text Block] Schedule of Gross Unrealized Losses and Fair Value of Marketable Securities in an Unrealized Loss Position Debt Securities, Available-for-Sale, Unrealized Loss Position, Fair Value [Table Text Block] Total current liabilities Liabilities, Current Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member] Weighted average shares used in computing net income per share: Weighted Average Number of Shares Outstanding, Diluted [Abstract] Total assets Assets 2025 Finite-Lived Intangible Asset, Expected Amortization, Year One Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Schedule of the Carrying Value of Intangible Assets Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block] Schedule of Fair Value of Financial Assets and Liabilities Measured on Recurring Basis Fair Value, Assets Measured on Recurring Basis [Table Text Block] Purchases of property and equipment Payments to Acquire Property, Plant, and Equipment Other noncurrent liabilities Other Liabilities, Noncurrent Forgone Recovery due to Violation of Home Country Law, Amount Forgone Recovery due to Violation of Home Country Law, Amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Commitments and contingencies (Note 8) Commitments and Contingencies Termination Date Trading Arrangement Termination Date The 2021 Employee Stock Purchase Plan The 2021 Employee Stock Purchase Plan [Member] Information related to the 2021 Employee Stock Purchase Plan. 2026 Lessee, Operating Lease, Liability, to be Paid, Year Two Not Designated as Hedging Instrument Not Designated as Hedging Instrument [Member] Entity Address, City or Town Entity Address, City or Town Due after One Year through Five Years Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, after Year One Through Five Schedule of Stock Option Activity Share-Based Payment Arrangement, Option, Activity [Table Text Block] Revenue Recognition [Abstract] Stock-based compensation Stock-based compensation Share-Based Payment Arrangement, Expense Net income Net income Net Income (Loss) Attributable to Parent Trading Arrangement: Trading Arrangement [Axis] Granted (in USD per share) Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price Pay vs Performance Disclosure, Table Pay vs Performance [Table Text Block] Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items] Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items] Forfeited (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period Equity Awards Adjustments, Excluding Value Reported in Compensation Table Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member] Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member] Entity File Number Entity File Number Cash and Cash Equivalents [Axis] Cash and Cash Equivalents [Axis] Revenue from Contracts with Customers Revenue from Contract with Customer [Text Block] Document Fiscal Year Focus Document Fiscal Year Focus Income Statement [Abstract] Income Statement [Abstract] Entity Address, Address Line One Entity Address, Address Line One Change in unrealized gains (losses) during the period OCI, before Reclassifications, before Tax, Attributable to Parent Fair Value Disclosure of Asset and Liability Not Measured at Fair Value [Table] Fair Value Disclosure of Asset and Liability Not Measured at Fair Value [Table] Accrued liabilities and other noncurrent liabilities Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities Name Forgone Recovery, Individual Name 2024 (remaining three months) Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year Weighted average remaining lease term (years) Operating Lease, Weighted Average Remaining Lease Term Document Period End Date Document Period End Date Award Timing MNPI Considered Award Timing MNPI Considered [Flag] Asset-backed securities Debt Securities, Available-for-Sale, Maturity, without Single Maturity Date, Fair Value Total minimum lease payments Lessee, Operating Lease, Liability, to be Paid Beginning balance (in shares) Ending balance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number Asset Class [Axis] Asset Class [Axis] Insider Trading Arrangements [Line Items] Outstanding Aggregate Erroneous Compensation Amount Outstanding Aggregate Erroneous Compensation Amount Contract with Customer, Sales Channel [Domain] Contract with Customer, Sales Channel [Domain] 2027 Lessee, Operating Lease, Liability, to be Paid, Year Three PEO Actually Paid Compensation Amount PEO Actually Paid Compensation Amount Cost of revenues Cost of revenues Cost of Revenue Revenue from contract with customer, revenue recognized Contract with Customer, Liability, Revenue Recognized Adjustment to Compensation: Adjustment to Compensation [Axis] Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Foreign Exchange Contract Foreign Exchange Contract [Member] Noncurrent restricted cash Restricted Cash and Cash Equivalents, Noncurrent Document Transition Report Document Transition Report Document Quarterly Report Document Quarterly Report Shares that will vest upon trigger (in percentage) qlys_SharebasedCompensationPercentageOfSharesThatWillVestUponTrigger Represents percentage of shares that will vest upon trigger for share-based compensation. Due after One Year through Five Years Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, after Year One Through Five Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Entity Current Reporting Status Entity Current Reporting Status Accumulated Deficit Retained Earnings [Member] Pension Adjustments Service Cost Pension Adjustments Service Cost [Member] Basic (in shares) Basic weighted average shares (in shares) Weighted Average Number of Shares Outstanding, Basic Stock Price or TSR Estimation Method Stock Price or TSR Estimation Method [Text Block] Gross Unrealized Losses Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer, Accumulated Loss Schedule of Revenues from External Customers and Long-Lived Assets [Table] Schedule of Revenues from External Customers and Long-Lived Assets [Table] Restricted stock units Restricted Stock Units (RSUs) [Member] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Executive Category: Executive Category [Axis] Name Awards Close in Time to MNPI Disclosures, Individual Name Gross Unrealized Losses Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months, Accumulated Loss Entity Filer Category Entity Filer Category Remaining performance obligation Revenue, Remaining Performance Obligation, Amount Income Statement Location [Domain] Statement of Income Location, Balance [Domain] Net change in unrealized gains (losses) on cash flow hedges, net of tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax, Parent Company Selected Measure Name Company Selected Measure Name Employee stock purchase plan Employee Stock Purchase Plan Shares [Member] Represents information regarding employee stock purchase plan shares. EX-101.PRE 10 qlys-20240930_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 12 R1.htm IDEA: XBRL DOCUMENT v3.24.3
Cover - shares
9 Months Ended
Sep. 30, 2024
Oct. 24, 2024
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Sep. 30, 2024  
Document Transition Report false  
Entity File Number 001-35662  
Entity Registrant Name QUALYS, INC.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 77-0534145  
Entity Address, Address Line One 919 E. Hillsdale Boulevard, 4th Floor  
Entity Address, City or Town Foster City  
Entity Address, State or Province CA  
Entity Address, Postal Zip Code 94404  
City Area Code 650  
Local Phone Number 801-6100  
Title of 12(b) Security Common stock, $0.001 par value per share  
Trading Symbol QLYS  
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   36,590,452
Entity Central Index Key 0001107843  
Current Fiscal Year End Date --12-31  
Document Fiscal Year Focus 2024  
Document Fiscal Period Focus Q3  
Amendment Flag false  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Current assets:    
Cash and cash equivalents $ 235,430 $ 203,665
Restricted cash 0 1,500
Short-term marketable securities 150,913 221,893
Accounts receivable, net of allowance of $1,154 and $778 as of September 30, 2024 and December 31, 2023, respectively 114,967 146,226
Prepaid expenses and other current assets 35,307 26,714
Total current assets 536,617 599,998
Long-term marketable securities 186,680 56,644
Property and equipment, net 27,343 32,599
Operating leases - right of use asset 41,294 22,391
Deferred tax assets, net 77,730 62,761
Intangible assets, net 7,451 9,715
Goodwill 7,447 7,447
Noncurrent restricted cash 1,200 1,200
Other noncurrent assets 22,561 19,863
Total assets 908,323 812,618
Current liabilities:    
Accounts payable 1,422 988
Accrued liabilities 39,960 43,096
Deferred revenues, current 337,821 333,267
Operating lease liabilities, current 9,333 11,857
Total current liabilities 388,536 389,208
Deferred revenues, noncurrent 23,116 31,671
Operating lease liabilities, noncurrent 38,266 16,885
Other noncurrent liabilities 8,810 6,680
Total liabilities 458,728 444,444
Commitments and contingencies (Note 8)
Stockholders’ equity:    
Preferred stock: $0.001 par value; 20,000 shares authorized, no shares issued and outstanding as of September 30, 2024 and December 31, 2023 0 0
Common stock: $0.001 par value; 1,000,000 shares authorized, 36,640 and 36,909 shares issued and outstanding as of September 30, 2024 and December 31, 2023, respectively 37 37
Additional paid-in capital 642,435 597,921
Accumulated other comprehensive loss (293) (1,704)
Accumulated deficit (192,584) (228,080)
Total stockholders’ equity 449,595 368,174
Total liabilities and stockholders’ equity $ 908,323 $ 812,618
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Balance Sheets (Parenthetical) - USD ($)
shares in Thousands, $ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Statement of Financial Position [Abstract]    
Accounts receivable, net of allowance $ 1,154 $ 778
Preferred stock, par value (in USD per share) $ 0.001 $ 0.001
Preferred stock, shares authorized (in shares) 20,000 20,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in USD per share) $ 0.001 $ 0.001
Common stock, shares authorized (in shares) 1,000,000 1,000,000
Common stock, shares issued (in shares) 36,640 36,909
Common stock, shares outstanding (in shares) 36,640 36,909
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Operations - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Income Statement [Abstract]        
Revenues $ 153,867 $ 141,996 $ 448,380 $ 409,888
Cost of revenues 28,832 26,739 82,445 80,355
Gross profit 125,035 115,257 365,935 329,533
Operating expenses:        
Research and development 28,901 27,782 83,550 83,001
Sales and marketing 32,686 27,881 94,240 79,750
General and administrative 18,494 15,999 50,362 45,182
Total operating expenses 80,081 71,662 228,152 207,933
Income from operations 44,954 43,595 137,783 121,600
Other income (expense), net:        
Interest income 6,764 5,136 19,590 11,342
Other income (expense), net 605 (708) (1,381) (1,883)
Total other income, net 7,369 4,428 18,209 9,459
Income before income taxes 52,323 48,023 155,992 131,059
Income tax provision 6,111 1,508 26,277 20,057
Net income $ 46,212 $ 46,515 $ 129,715 $ 111,002
Net income per share:        
Basic (in USD per share) $ 1.26 $ 1.27 $ 3.52 $ 3.01
Diluted (in USD per share) $ 1.24 $ 1.24 $ 3.46 $ 2.96
Weighted average shares used in computing net income per share:        
Basic (in shares) 36,762 36,766 36,877 36,891
Diluted (in shares) 37,136 37,448 37,441 37,516
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Comprehensive Income - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Statement of Comprehensive Income [Abstract]        
Net income $ 46,212 $ 46,515 $ 129,715 $ 111,002
Other comprehensive income (loss), net of tax        
Net change in unrealized gains on available-for-sale debt securities, net of tax 2,256 339 1,628 1,782
Net change in unrealized gains (losses) on cash flow hedges, net of tax (2,015) 510 (217) (702)
Other comprehensive income, net of tax 241 849 1,411 1,080
Comprehensive income $ 46,453 $ 47,364 $ 131,126 $ 112,082
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Cash flow from operating activities:    
Net income $ 129,715 $ 111,002
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization expense 14,410 21,140
Provision for credit losses 411 230
Loss on non-marketable securities 0 533
Stock-based compensation, net of amounts capitalized 56,454 50,560
Accretion of discount on marketable securities, net (5,231) (3,502)
Deferred income taxes (15,374) (11,561)
Changes in operating assets and liabilities:    
Accounts receivable 30,848 18,137
Prepaid expenses and other assets (9,900) (4,804)
Accounts payable 391 (1,428)
Accrued liabilities and other noncurrent liabilities (1,351) 8,211
Deferred revenues (4,001) 22,248
Net cash provided by operating activities 196,372 210,766
Cash flow from investing activities:    
Purchases of marketable securities (305,952) (252,438)
Sales and maturities of marketable securities 252,940 212,202
Purchases of property and equipment (6,497) (7,263)
Net cash used in investing activities (59,509) (47,499)
Cash flow from financing activities:    
Repurchase of common stock (97,188) (147,725)
Proceeds from exercise of stock options 8,311 28,384
Payments for taxes related to net share settlement of equity awards (23,093) (14,998)
Proceeds from issuance of common stock through employee stock purchase plan 6,872 6,077
Payment of acquisition-related holdback (1,500) 0
Net cash used in financing activities (106,598) (128,262)
Net increase in cash, cash equivalents and restricted cash 30,265 35,005
Cash, cash equivalents and restricted cash at beginning of period 206,365 176,419
Cash, cash equivalents and restricted cash at end of period $ 236,630 $ 211,424
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.24.3
Condensed Consolidated Statements of Stockholders' Equity - USD ($)
shares in Thousands, $ in Thousands
Total
Common Stock
Additional Paid-In Capital
Accumulated Other Comprehensive Income (Loss)
Accumulated Deficit
Beginning balance (in shares) at Dec. 31, 2022   37,362      
Beginning balance at Dec. 31, 2022 $ 289,129 $ 37 $ 512,486 $ (1,947) $ (221,447)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 29,105       29,105
Other comprehensive income (loss), net of tax 376     376  
Issuance of common stock upon exercise of stock options (in shares)   61      
Issuance of common stock upon exercise of stock options 2,328   2,328    
Repurchase of common stock (in shares)   (584)      
Repurchase of common stock (67,032)   (7,014)   (60,018)
Issuance of common stock upon vesting of restricted stock units (in shares)   108      
Taxes related to net share settlement of equity awards (in shares)   (43)      
Taxes related to net share settlement of equity awards (5,105)   (5,105)    
Issuance of common stock through employee stock purchase plan (in shares)   29      
Issuance of common stock through employee stock purchase plan 2,988   2,988    
Stock-based compensation 16,033   16,033    
Ending balance (in shares) at Mar. 31, 2023   36,933      
Ending balance at Mar. 31, 2023 267,822 $ 37 521,716 (1,571) (252,360)
Beginning balance (in shares) at Dec. 31, 2022   37,362      
Beginning balance at Dec. 31, 2022 289,129 $ 37 512,486 (1,947) (221,447)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 111,002        
Other comprehensive income (loss), net of tax 1,080        
Ending balance (in shares) at Sep. 30, 2023   36,796      
Ending balance at Sep. 30, 2023 322,917 $ 37 568,088 (867) (244,341)
Beginning balance (in shares) at Mar. 31, 2023   36,933      
Beginning balance at Mar. 31, 2023 267,822 $ 37 521,716 (1,571) (252,360)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 35,382       35,382
Other comprehensive income (loss), net of tax (145)     (145)  
Issuance of common stock upon exercise of stock options (in shares)   101      
Issuance of common stock upon exercise of stock options 4,820   4,820    
Repurchase of common stock (in shares)   (346)      
Repurchase of common stock (42,492)   (4,157)   (38,335)
Issuance of common stock upon vesting of restricted stock units (in shares)   96      
Taxes related to net share settlement of equity awards (in shares)   (38)      
Taxes related to net share settlement of equity awards (4,389)   (4,389)    
Stock-based compensation 16,020   16,020    
Ending balance (in shares) at Jun. 30, 2023   36,746      
Ending balance at Jun. 30, 2023 277,018 $ 37 534,010 (1,716) (255,313)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 46,515       46,515
Other comprehensive income (loss), net of tax 849     849  
Issuance of common stock upon exercise of stock options (in shares)   239      
Issuance of common stock upon exercise of stock options 21,236   21,236    
Repurchase of common stock (in shares)   (273)      
Repurchase of common stock (38,822) $ 0 (3,279)   (35,543)
Issuance of common stock upon vesting of restricted stock units (in shares)   92      
Taxes related to net share settlement of equity awards (in shares)   (39)      
Taxes related to net share settlement of equity awards (5,504)   (5,504)    
Issuance of common stock through employee stock purchase plan (in shares)   31      
Issuance of common stock through employee stock purchase plan 3,089   3,089    
Stock-based compensation 18,536   18,536    
Ending balance (in shares) at Sep. 30, 2023   36,796      
Ending balance at Sep. 30, 2023 322,917 $ 37 568,088 (867) (244,341)
Beginning balance (in shares) at Dec. 31, 2023   36,909      
Beginning balance at Dec. 31, 2023 368,174 $ 37 597,921 (1,704) (228,080)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 39,731       39,731
Other comprehensive income (loss), net of tax 697     697  
Issuance of common stock upon exercise of stock options (in shares)   46      
Issuance of common stock upon exercise of stock options 2,770   2,770    
Repurchase of common stock (in shares)   (105)      
Repurchase of common stock (18,029)   (627)   (17,402)
Issuance of common stock upon vesting of restricted stock units (in shares)   149      
Taxes related to net share settlement of equity awards (in shares)   (66)      
Taxes related to net share settlement of equity awards (11,808)   (11,808)    
Issuance of common stock through employee stock purchase plan (in shares)   29      
Issuance of common stock through employee stock purchase plan 3,608   3,608    
Stock-based compensation 19,059   19,059    
Ending balance (in shares) at Mar. 31, 2024   36,962      
Ending balance at Mar. 31, 2024 404,202 $ 37 610,923 (1,007) (205,751)
Beginning balance (in shares) at Dec. 31, 2023   36,909      
Beginning balance at Dec. 31, 2023 368,174 $ 37 597,921 (1,704) (228,080)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 129,715        
Other comprehensive income (loss), net of tax $ 1,411        
Issuance of common stock upon exercise of stock options (in shares) 161        
Ending balance (in shares) at Sep. 30, 2024   36,640      
Ending balance at Sep. 30, 2024 $ 449,595 $ 37 642,435 (293) (192,584)
Beginning balance (in shares) at Mar. 31, 2024   36,962      
Beginning balance at Mar. 31, 2024 404,202 $ 37 610,923 (1,007) (205,751)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 43,772       43,772
Other comprehensive income (loss), net of tax 473     473  
Issuance of common stock upon exercise of stock options (in shares)   61      
Issuance of common stock upon exercise of stock options 3,200   3,200    
Repurchase of common stock (in shares)   (233)      
Repurchase of common stock (35,063)   (1,395)   (33,668)
Issuance of common stock upon vesting of restricted stock units (in shares)   91      
Taxes related to net share settlement of equity awards (in shares)   (35)      
Taxes related to net share settlement of equity awards (5,903)   (5,903)    
Stock-based compensation 17,114   17,114    
Ending balance (in shares) at Jun. 30, 2024   36,846      
Ending balance at Jun. 30, 2024 427,795 $ 37 623,939 (534) (195,647)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income 46,212       46,212
Other comprehensive income (loss), net of tax 241     241  
Issuance of common stock upon exercise of stock options (in shares)   54      
Issuance of common stock upon exercise of stock options 2,341   2,341    
Repurchase of common stock (in shares)   (344)      
Repurchase of common stock (45,213)   (2,064)   (43,149)
Issuance of common stock upon vesting of restricted stock units (in shares)   91      
Taxes related to net share settlement of equity awards (in shares)   (38)      
Taxes related to net share settlement of equity awards (5,382)   (5,382)    
Issuance of common stock through employee stock purchase plan (in shares)   31      
Issuance of common stock through employee stock purchase plan 3,264   3,264    
Stock-based compensation 20,337   20,337    
Ending balance (in shares) at Sep. 30, 2024   36,640      
Ending balance at Sep. 30, 2024 $ 449,595 $ 37 $ 642,435 $ (293) $ (192,584)
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.24.3
Description of Business and Summary of Significant Accounting Policies
9 Months Ended
Sep. 30, 2024
Accounting Policies [Abstract]  
Description of Business and Summary of Significant Accounting Policies Description of Business and Summary of Significant Accounting Policies
Description of Business
Qualys, Inc. (the “Company”, "we", "us", "our") was incorporated in the state of Delaware on December 30, 1999. The Company is headquartered in Foster City, California and has wholly-owned subsidiaries throughout the world. The Company is a leading provider of cloud-based information technology ("IT"), security and compliance solutions that enable organizations to identify security risks to their IT infrastructures, help protect their IT systems and applications from ever-evolving cyber-attacks and achieve compliance with internal policies and external regulations. The Company’s cloud solutions address the growing security and compliance complexities and risks that are amplified by the dissolving boundaries between internal and external IT infrastructures and web environments, the rapid adoption of cloud computing and the proliferation of geographically dispersed IT assets. Organizations can use the Company’s integrated suite of solutions delivered on Qualys' Enterprise TruRisk Platform to cost-effectively obtain a unified view of their security and compliance posture across globally-distributed IT infrastructures.
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements and condensed footnotes have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP") for interim financial information as well as the instructions to Form 10-Q and the rules and regulations of the U.S. Securities and Exchange Commission ("SEC"). Certain information and disclosures normally included in the financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The condensed consolidated balance sheet as of December 31, 2023, included herein, was derived from the audited financial statements as of that date but does not include all disclosures, including notes required by U.S. GAAP. In the opinion of management, the accompanying unaudited condensed consolidated financial statements reflect all adjustments, which include only normal recurring adjustments, necessary for the fair statement of the financial position, results of operations and cash flows for the interim periods. The results of operations for the three and nine months ended September 30, 2024 are not necessarily indicative of the results of operations expected for the entire year ending December 31, 2024 or for any other future annual or interim periods. These condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 filed with the SEC on February 22, 2024.
Use of Estimates
The preparation of the unaudited condensed consolidated financial statements in conformity with U.S. GAAP requires management to make certain estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of assets and liabilities at the date of the condensed consolidated financial statements and the reported results of operations during the reporting period. The Company’s management regularly assesses these estimates, which primarily affect revenue recognition, allowance for credit loss, the valuation of goodwill and intangible assets, leases, stock-based compensation and income tax provision. Actual results could differ from those estimates and such differences may be material to the accompanying unaudited condensed consolidated financial statements.
Recently Adopted Accounting Pronouncements
None.
Recently Issued Accounting Pronouncements Not Yet Adopted
In November 2023, the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2023-07 requiring enhanced segment disclosures. The ASU requires disclosure of significant segment expenses regularly provided to the chief operating decision maker ("CODM") included within segment operating profit or loss. Additionally, the ASU requires a description of how the CODM utilizes segment operating profit or loss to assess segment performance. The requirements of the ASU are effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company's annual reporting requirements will be effective for fiscal 2024 and interim reporting requirements will be effective beginning with the first quarter of fiscal 2025. Early adoption is permitted and retrospective application is required for all periods presented. The Company is in the process of analyzing the impact of the ASU on related disclosures.
In December 2023, the FASB issued ASU 2023-09 requiring improvements to income tax disclosures. The new ASU requires disclosure of disaggregated information about the effective tax rate and income taxes paid. The requirements of the ASU are effective for annual periods beginning after December 15, 2024 and are to be applied on a prospective basis. The Company's annual reporting requirements will be effective for fiscal year 2025. Companies can choose to early adopt and apply the guidance retrospectively. The Company is in the process of analyzing the impact of the ASU on related disclosures.
There have been no material changes to the Company’s significant accounting policies set forth in "Note 1" of Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023.
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments
9 Months Ended
Sep. 30, 2024
Fair Value Disclosures [Abstract]  
Fair Value of Financial Instruments Fair Value of Financial Instruments
Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. For certain of the Company’s financial instruments, including certain cash equivalents, accounts receivable, accounts payable and accrued liabilities, the carrying amounts approximate their fair values due to the relatively short maturity of these balances.
The Company measures and reports certain cash equivalents, marketable securities, derivative foreign currency forward contracts at fair value in accordance with the provisions of the authoritative accounting guidance that addresses fair value measurements. This guidance establishes a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that the most observable inputs be used when available. The hierarchy is broken down into three levels based on the reliability of inputs as follows:
Level 1 - Valuations based on quoted prices in active markets for identical assets or liabilities.
Level 2 - Valuations based on other than quoted prices in active markets for identical assets and liabilities, including quoted prices for identical assets or liabilities in less active or inactive markets, quoted prices for similar assets or liabilities in active markets, or inputs other than quoted prices that are observable for substantially the full term of the assets or liabilities.
Level 3 - Valuations based on inputs that are generally unobservable and typically reflect management’s estimates of assumptions that market participants would use in pricing the asset or liability.
The Company's financial instruments consist of assets and liabilities measured using Level 1 and 2 inputs. Level 1 assets include a highly liquid money market fund, which is valued using unadjusted quoted prices that are available in an active market for an identical asset. Level 2 assets include fixed-income U.S. Treasury and government agency securities, commercial paper, corporate bonds, asset-backed securities and derivative financial instruments consisting of foreign currency forward contracts. The securities, bonds and commercial paper are valued using prices from independent pricing services based on quoted prices of identical instruments in less active or inactive markets, quoted prices of similar instruments in active markets, or industry models using data inputs such as interest rates and prices that can be directly observed or corroborated in active markets. The foreign currency forward contracts are valued using observable inputs, such as quotations on forward foreign exchange points and foreign interest rates.
The following table sets forth by level within the fair value hierarchy the fair value of the Company's financial assets and liabilities measured at fair value on a recurring basis:
September 30, 2024
Level 1Level 2Fair Value
(in thousands)
Money market funds$2,172 $— $2,172 
Commercial paper— 14,383 14,383 
U.S. Treasury and government agencies— 231,248 231,248 
Corporate bonds— 121,371 121,371 
Asset-backed securities— 8,838 8,838 
Foreign currency forward contracts— 19 19 
Total assets$2,172 $375,859 $378,031 
Foreign currency forward contracts$— $2,569 $2,569 
Total liabilities$— $2,569 $2,569 
December 31, 2023
Level 1Level 2Fair Value
(in thousands)
Money market funds$87 $— $87 
Commercial paper— 54,279 54,279 
U.S. Treasury and government agencies— 208,536 208,536 
Corporate bonds— 56,465 56,465 
Asset-backed securities— 13,881 13,881 
Foreign currency forward contracts— 111 111 
Total assets$87 $333,272 $333,359 
Foreign currency forward contracts$— $1,986 $1,986 
Total liabilities$— $1,986 $1,986 
There were no transfers between Level 1, Level 2 and Level 3 categories during the three and nine months ended September 30, 2024 and 2023.
Cash equivalent and investments
The Company's cash equivalents and marketable securities consist of the following:
September 30, 2024
Amortized CostUnrealized GainsUnrealized LossesFair Value
(in thousands)
Cash equivalents: (1)
Money market funds$2,172 $— $— $2,172 
Commercial paper1,000 — — 1,000 
U.S. Treasury and government agencies37,247 (1)37,247 
Total40,419 (1)40,419 
Short-term marketable securities:    
Commercial paper13,376 (1)13,383 
Corporate bonds38,697 148 (9)38,836 
U.S. Treasury and government agencies98,450 252 (8)98,694 
Total150,523 408 (18)150,913 
Long-term marketable securities:
Corporate bonds81,514 1,026 (5)82,535 
Asset-backed securities8,725 113 — 8,838 
U.S. Treasury and government agencies94,556 759 (8)95,307 
Total184,795 1,898 (13)186,680 
Total$375,737 $2,307 $(32)$378,012 
(1)Excludes cash of $195.0 million.
December 31, 2023
Amortized CostUnrealized GainsUnrealized LossesFair Value
(in thousands)
Cash equivalents: (2)
Money market funds$87 $— $— $87 
U.S. Treasury and government agencies54,620 — 54,624 
Total54,707 — 54,711 
Short-term marketable securities:
Commercial paper54,254 32 (7)54,279 
Corporate bonds23,013 (149)22,865 
U.S. Treasury and government agencies144,901 52 (204)144,749 
Total222,168 85 (360)221,893 
Long-term marketable securities:
Corporate bonds33,337 285 (22)33,600 
Asset-backed securities13,785 102 (6)13,881 
U.S. Treasury and government agencies9,116 49 (2)9,163 
Total56,238 436 (30)56,644 
Total$333,113 $525 $(390)$333,248 
(2)Excludes cash of $149.0 million.
The following table summarizes the gross unrealized losses and fair value of the Company's marketable securities that were in an unrealized loss position aggregated by length of time:
September 30, 2024
Less than 12 months12 months or longerTotal
Fair ValueGross Unrealized LossesFair ValueGross Unrealized LossesFair ValueGross Unrealized Losses
(in thousands)
Commercial paper$7,968 $(1)$— $— $7,968 $(1)
Corporate bonds10,730 (7)668 (7)11,398 (14)
U.S. Treasury and government agencies29,689 (17)— — 29,689 (17)
Total$48,387 $(25)$668 $(7)$49,055 $(32)
December 31, 2023
Less than 12 months12 months or longerTotal
Fair ValueGross Unrealized LossesFair ValueGross Unrealized LossesFair ValueGross Unrealized Losses
(in thousands)
Commercial paper$24,838 $(7)$— $— $24,838 $(7)
Asset-backed securities— — 1,485 (6)1,485 (6)
Corporate bonds— — 20,717 (171)20,717 (171)
U.S. Treasury and government agencies43,373 (18)18,172 (188)61,545 (206)
Total$68,211 $(25)$40,374 $(365)$108,585 $(390)
The Company considered the extent to which any unrealized losses on its marketable securities were driven by credit risk and other factors, including market risk, and if it is more-likely-than-not that the Company would have to sell the security before the recovery of the amortized cost basis. At September 30, 2024 and December 31, 2023, the unrealized losses related to its marketable securities were due to higher market interest rates compared to when the investments were initiated. The Company does not believe the unrealized losses represent credit risk, and the Company does not intend to sell any of the securities in an unrealized loss position and it is not likely that the Company would be required to sell these securities before recovery of their amortized cost basis, which may be at maturity. Thus, no credit loss was recognized for the Company's marketable securities for the three and nine months ended September 30, 2024 and 2023.
The following summarizes the fair value of marketable securities by contractual maturity:
September 30, 2024
Amortized CostFair Value
(in thousands)
Due within One Year$190,942 $191,332 
Due after One Year through Five Years176,070 177,842 
Asset-backed securities8,725 8,838 
Total$375,737 $378,012 
Non-Marketable Securities
During the fiscal year ended December 31, 2018, the Company invested $2.5 million in preferred stock of a privately-held company. The fair value of the investment is not readily available, and there are no quoted market prices for the investment. The Company accounts for the investment at cost less impairment and will measure the investment at fair value when the Company identifies observable price changes. The investment is assessed for impairment whenever events or changes in circumstances indicate that the fair value of the investment is less than carrying value. During the second quarter of 2023, the Company identified an observable price change in the investment and recognized an immaterial unrealized loss in other income (expense), net of the condensed consolidated statement of operations. The investment is included in other noncurrent assets on the condensed consolidated balance sheets. The Company has not received any dividends from the investment.
Derivative Financial Instruments
Designated cash flow hedges
The Company enters into foreign currency forward contracts to reduce the risk of variability in future cash flow due to foreign currency exchange rate fluctuation from certain forecasted subscription revenue orders billed in British Pound ("GBP") and Euro ("EUR") and operating expenses incurred in Indian Rupee ("INR"), which are designated as cash flow hedges. Hedge effectiveness is assessed at inception and at each reporting period utilizing regression analysis. Unrealized foreign exchange gains or losses related to those designated cash flow hedge contracts are recorded in accumulated other comprehensive income ("AOCI") and will be reclassified into revenues or operating expenses, respectively, in the same periods when the hedged transactions are recognized in earnings.
As of September 30, 2024, the Company had designated cash flow hedge forward contracts with notional amounts of €46.4 million, £18.0 million and Rs.4,273.0 million. As of December 31, 2023, the Company had designated cash flow hedge forward contracts with notional amounts of €48.5 million, £14.6 million and Rs.4,042.0 million.
As of September 30, 2024, the amount of net unrealized loss of $1.5 million before tax on the foreign currency forward contracts for GBP and EUR reported in AOCI is expected to be reclassified into revenue within the next 12 months. As of September 30, 2024, an immaterial amount of net unrealized loss before tax on the foreign currency forward contracts for INR reported in AOCI is expected to be reclassified into operating expenses within the next 12 months.
Non-designated forward contracts
The Company also uses foreign currency forward contracts to hedge certain foreign currency denominated assets or liabilities, which are not designated as cash flow hedges. Unrealized foreign exchange gain or losses related to the non-designated forward contracts are recorded in other income (expenses), net and offset the foreign exchange gain or loss on the underlying net monetary assets or liabilities.
As of September 30, 2024, the Company had non-designated forward contracts with notional amounts of €12.5 million, £5.1 million, Rs.1,208.0 million, and Canadian Dollar ("C$" or "CAD") 1.2 million. As of December 31, 2023, the Company had non-designated forward contracts with notional amounts of €19.2 million, £6.0 million, Rs.440.0 million, and C$1.0 million.
The following summarizes the fair value of derivative financial instruments as of September 30, 2024 and December 31, 2023:
September 30,
2024
December 31,
2023
(in thousands)
Assets
Foreign currency forward contracts designated as cash flow hedge$— $63 
Foreign currency forward contracts not designated as hedging instruments19 48 
Total$19 $111 
Liabilities
Foreign currency forward contracts designated as cash flow hedge$2,474 $1,502 
Foreign currency forward contracts not designated as hedging instruments95 484 
Total$2,569 $1,986 
The Company presents its derivative assets and derivative liabilities at gross fair values in the condensed consolidated balance sheets. However, under the master netting agreements with the respective counterparties of the foreign exchange contracts, subject to applicable requirements, the Company is allowed to net settle transactions of the same currency with a single net amount payable by one party to the other. The potential offset to both assets and liabilities under the right of set-off associated with the Company's foreign currency exchange contracts are immaterial as of September 30, 2024 and December 31, 2023. The derivatives held by the Company are not subject to any credit contingent features negotiated with its counterparties. The Company is not required to pledge nor is entitled to receive cash collateral related to the above contracts. The counterparties to these derivatives are large, global financial institutions that the Company believes are creditworthy, and therefore, it does not consider the risk of counterparty nonperformance to be material.
The following summarizes the gains (losses) recognized from forward contracts and other foreign currency transactions in other income (expense), net in the condensed consolidated statements of operations:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Net gains (losses) from non-designated forward contracts$(896)$540 $(457)$690 
Other foreign currency transactions gains (losses)1,501 (1,248)(958)(1,979)
Total foreign exchange gains (losses), net$605 $(708)$(1,415)$(1,289)
XML 21 R10.htm IDEA: XBRL DOCUMENT v3.24.3
Accumulated Other Comprehensive Income (Loss)
9 Months Ended
Sep. 30, 2024
Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]  
Accumulated Other Comprehensive Income (Loss) Accumulated Other Comprehensive Income (Loss)
The components and changes in accumulated other comprehensive income (loss) for the three and nine months ended September 30, 2024 and 2023 were as follows:
Available-for-Sale Debt SecuritiesCash Flow HedgesTotal
(in thousands)
Balances at December 31, 2023$108 $(1,812)$(1,704)
Change in unrealized gains (losses) during the period(436)1,222 786 
Amount reclassified into income during the period— 218 218 
Tax effect29 (336)(307)
Net change during the period(407)1,104 697 
Balances at March 31, 2024$(299)$(708)$(1,007)
Change in unrealized gains (losses) during the period(221)465 244 
Amount reclassified into income during the period— 414 414 
Tax effect— (185)(185)
Net change during the period(221)694 473 
Balances at June 30, 2024$(520)$(14)$(534)
Change in unrealized gains (losses) during the period2,796 (3,065)(269)
Amount reclassified into income during the period— 423 423 
Tax effect(540)627 87 
Net change during the period2,256 (2,015)241 
Balances at September 30, 2024$1,736 $(2,029)$(293)
Balances at December 31, 2022$(2,705)$758 $(1,947)
Change in unrealized gains (losses) during the period1,131 (443)688 
Amount reclassified into income during the period— (534)(534)
Tax effect— 222 222 
Net change during the period1,131 (755)376 
Balances at March 31, 2023$(1,574)$$(1,571)
Change in unrealized gains (losses) during the period312 65 377 
Amount reclassified into income during the period— (665)(665)
Tax effect— 143 143 
Net change during the period312 (457)(145)
Balances at June 30, 2023$(1,262)$(454)$(1,716)
Change in unrealized gains (losses) during the period339 1,249 1,588 
Amount reclassified into income during the period— (580)(580)
Tax effect— (159)(159)
Net change during the period339 510 849 
Balances at September 30, 2023$(923)$56 $(867)
The effects on income before income taxes of amounts reclassified from AOCI to the condensed consolidated statements of operations were as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Reclassification of AOCI - Cash flow hedges
Revenues$(320)$721 $(974)$2,918 
Cost of revenues(25)(32)(19)(262)
Research and development(64)(89)(51)(724)
Sales and marketing(6)(6)(5)(45)
General and administrative(8)(14)(6)(108)
Total$(423)$580 $(1,055)$1,779 
There was no reclassification of AOCI to other income (expense), net related to Available-for-sale debt securities during the three and nine months ended September 30, 2024 and 2023.
XML 22 R11.htm IDEA: XBRL DOCUMENT v3.24.3
Property and Equipment, Net
9 Months Ended
Sep. 30, 2024
Property, Plant and Equipment [Abstract]  
Property and Equipment, Net Property and Equipment, Net
Property and equipment, net, consists of the following:
September 30,
2024
December 31,
2023
(in thousands)
Computer equipment$182,926 $179,002 
Computer software26,157 26,133 
Leasehold improvements21,894 20,924 
Scanner appliances18,661 18,369 
Furniture, fixtures and equipment5,087 6,699 
Total property and equipment254,725 251,127 
Less: accumulated depreciation and amortization(227,382)(218,528)
Property and equipment, net$27,343 $32,599 
As of September 30, 2024 and December 31, 2023, physical scanner appliances and other computer equipment that are or will be subject to leases by customers had a net carrying value of $9.4 million and $10.1 million, respectively, including assets that had not been placed in service of $5.8 million and $6.4 million, respectively.
Depreciation and amortization expenses relating to property and equipment were $3.6 million and $5.8 million for the three months ended September 30, 2024 and 2023, respectively, and $12.1 million and $18.4 million for the nine months ended September 30, 2024 and 2023, respectively, which were mainly recorded in cost of revenues in the condensed consolidated statements of operations.
XML 23 R12.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue from Contracts with Customers
9 Months Ended
Sep. 30, 2024
Revenue Recognition [Abstract]  
Revenue from Contracts with Customers Revenue from Contracts with Customers
The Company records deferred revenue when cash payments are received or due in advance of its performance obligations offset by revenue recognized in the period. Revenues of $66.8 million and $57.2 million were recognized during the three months ended September 30, 2024 and 2023, respectively, and $296.5 million and $257.4 million were recognized during the nine months ended September 30, 2024 and 2023, respectively, which amounts were included in the deferred revenue balances of $364.9 million and $317.2 million as of December 31, 2023 and 2022, respectively.
The Company's payment terms vary by the type and location of its customers. The term between invoicing and when payment is due is not significant. In certain circumstances, based on the credit quality of the customer, the Company requires payment before the products or services are delivered to the customer.
The following table sets forth the expected revenue from all remaining performance obligations as of September 30, 2024:
(in thousands)
2024 (remaining three months)$63,367 
2025193,560 
2026100,797 
202724,172 
20281,018 
2029 and thereafter387 
Total$383,301 
Revenues allocated to remaining performance obligations represents the transaction price of noncancelable orders for which service has not been performed, which include deferred revenue and the amounts that will be invoiced and recognized as revenues in future periods from open contracts and excludes unexercised renewals. The Company applied the short-term contract exemption to exclude the remaining performance obligations that are part of a contract that has an original expected duration of one year or less.
From time to time, the Company enters into contracts with customers that extend beyond one year, with certain of its customers electing to pay for more than one year of services upon contract execution. The Company concluded that these contracts did not contain a financing component.
Revenues by sales channel are as follows:
Three Months EndedNine Months Ended
September 30,September 30,
2024202320242023
(in thousands)(in thousands)
Direct$81,636 $80,499 $242,065 $234,410 
Partner72,231 61,497 206,315 175,478 
Total$153,867 $141,996 $448,380 $409,888 
The Company utilizes partners to enable and accelerate the adoption of its cloud platform by increasing its distribution capabilities and market awareness of its cloud platform as well as by targeting geographic regions outside the reach of its direct sales force. The Company's channel partners maintain relationships with their customers throughout the territories in which they operate and provide their customers with services and third-party solutions to help meet those customers’ evolving security and compliance requirements. As such, these partners may offer the Company's IT security and compliance solutions in conjunction with one or more of their own products or services and act as a conduit through which the Company can connect with these prospective customers to offer its solutions. For sales involving a channel partner, the channel partner engages with the prospective customer directly and involves the Company's sales team as needed to assist in developing and closing an order. When a channel partner secures a sale, the Company sells the associated subscription to the channel partner who in turn resells the subscription to the customer. Sales to channel partners are made at a discount and revenues are recorded at this discounted price over the subscription terms. The Company does not have any influence or specific knowledge of its partners' selling terms with their customers. See Note 11, "Segment and Geographic Area Information" for disaggregation of revenue by geographic area.
Deferred costs to obtain contracts are as follows:
September 30,
2024
December 31,
2023
(in thousands)
Current$6,796 $5,858 
Noncurrent$14,041 $11,844 
For the three months ended September 30, 2024 and 2023, the Company recognized $1.8 million and $1.5 million, respectively, of amortization expense relating to deferred costs to obtain contracts in sales and marketing expense in the condensed consolidated statements of operations. For the nine months ended September 30, 2024 and 2023, the Company recognized $5.2 million and $4.4 million, respectively, of amortization expense relating to deferred costs to obtain contracts in sales and marketing expense in the condensed consolidated statements of operations. During the same periods, there was no impairment loss related to the deferred costs to obtain contracts.
As of December 31, 2022, the net carrying value of the Company’s accounts receivable, current deferred revenues, and noncurrent deferred revenues were $121.8 million, $293.7 million and $23.5 million, respectively.
XML 24 R13.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible Assets, Net
9 Months Ended
Sep. 30, 2024
Goodwill and Intangible Assets Disclosure [Abstract]  
Intangible Assets, Net Intangible Assets, Net
Intangible assets consist primarily of developed technology and patent licenses acquired from business or asset acquisitions. Acquired intangibles are amortized on a straight-line basis over the respective estimated useful lives of the assets.
The carrying values of intangible assets are as follows:
September 30, 2024
(in thousands)Weighted Average Life (Years)CostAccumulated AmortizationNet Book Value
Developed technology4.6$40,141 $(32,730)$7,411 
Patent licenses14.01,387 (1,387)— 
Assembled workforce2.0359 (359)— 
Total intangibles subject to amortization$41,887 $(34,476)$7,411 
Intangible assets not subject to amortization40 
Total intangible assets, net$7,451 
 December 31, 2023
(in thousands)Weighted Average Life (Years)CostAccumulated AmortizationNet Book Value
Developed technology4.6$40,141 $(30,667)$9,474 
Patent licenses14.01,387 (1,322)65 
Assembled workforce2.0359 (223)136 
Total intangibles subject to amortization$41,887 $(32,212)$9,675 
Intangible assets not subject to amortization40 
Total intangible assets, net$9,715 
Intangible asset amortization expense was $0.7 million and $0.8 million for the three months ended September 30, 2024 and 2023, respectively, and $2.3 million and $2.3 million for the nine months ended September 30, 2024 and 2023, respectively. Intangible asset amortization expenses were primarily recorded in cost of revenues in the condensed consolidated statements of operations.
As of September 30, 2024, the Company expects amortization expense in future periods to be as follows:
(in thousands)
2024 (remaining three months)$640 
20252,556 
20262,477 
20271,738 
Total expected future amortization expense$7,411 
XML 25 R14.htm IDEA: XBRL DOCUMENT v3.24.3
Leases
9 Months Ended
Sep. 30, 2024
Leases [Abstract]  
Leases Leases
The Company leases certain offices, computer equipment and its shared cloud platform facilities under non-cancelable operating leases for varying periods through 2030. While under the Company's lease agreements the Company has options to extend its certain leases, the Company has not included renewal options in determining the lease terms for calculating its lease liabilities, as these options are not reasonably certain of being exercised. Lease expense was $4.5 million and $3.9 million for the three months ended September 30, 2024 and 2023, respectively, and $12.1 million and $12.1 million for the nine months ended September 30, 2024 and 2023, respectively.
Supplemental cash flow information related to operating leases was as follows:
Nine Months Ended
September 30,
20242023
(in thousands)
Cash payments included in the measurement of lease liabilities$10,665 $11,350 
Lease liabilities arising from obtaining right-of-use assets$28,157 $121 
The weighted average remaining lease term and the weighted average discount rate of the Company's operating leases were as follows:
September 30,
2024
December 31,
2023
Weighted average remaining lease term (years)4.43.1
Weighted average discount rate7.4 %5.2 %
Maturities of the Company's operating lease liabilities as of September 30, 2024 are as follows:
(in thousands)
2024 (remaining three months)$2,865 
202512,593 
202612,194 
202712,249 
20289,473 
2029 and thereafter7,377 
Total minimum lease payments56,751 
Less: interest(9,152)
Present value of net minimum lease payments$47,599 
XML 26 R15.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingencies
9 Months Ended
Sep. 30, 2024
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and Contingencies
Indemnifications
The Company from time to time enters into certain types of contracts that contingently require it to indemnify various parties against claims from third parties. These contracts primarily relate to (i) the Company's bylaws, under which it must indemnify directors and executive officers, and may indemnify other officers and employees, for liabilities arising out of their relationship, (ii) contracts under which the Company must indemnify directors and certain officers for liabilities arising out of their relationship, and (iii) contracts under which the Company may be required to indemnify customers or resellers from certain liabilities arising from potential infringement of intellectual property rights, as well as potential damages caused by limited product defects. To date, the Company has not incurred and has not recorded any liability in connection with such indemnifications.
The Company maintains director and officer insurance, which may cover certain liabilities arising from its obligation to indemnify its directors.
XML 27 R16.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation
9 Months Ended
Sep. 30, 2024
Equity [Abstract]  
Stockholders' Equity and Stock-based Compensation Stockholders' Equity and Stock-based Compensation
Equity Incentive Plans
Restated 2012 Equity Incentive Plan
On June 8, 2022 ("Effective Date"), the Company's stockholders approved the Amended and Restated 2012 Equity Incentive Plan (the "Restated 2012 Plan"). Under the Restated 2012 Plan, the Company is authorized to grant to eligible participants incentive stock options, nonstatutory stock options, restricted stock, restricted stock units ("RSUs"), stock appreciation rights, performance units and performance shares. Pursuant to the relevant plan provisions, 3,072 thousand shares were available for grant under the Restated 2012 Plan on the Effective Date. In addition, any outstanding awards or options granted under the previous version of the 2012 Equity Incentive Plan (“Previous 2012 Plan”) will be added back to the shares available for grant under the Restated 2012 Plan if they expire unexercised or are otherwise forfeited after the Effective Date. Any remaining shares available for grant under the Previous 2012 Plan as of the Effective Date were no longer available for future grants under the Restated 2012 Plan.
On June 12, 2024, the Company's stockholders approved an amendment and restatement to the Restated 2012 Plan to increase the number of shares of the Company's common stock reserved for issuance by 1,092 thousand shares.
As of September 30, 2024, 2,562 thousand shares were available for grant under the Restated 2012 Plan.
2021 Employee Stock Purchase Plan
On June 9, 2021, the Company’s stockholders approved the 2021 Employee Stock Purchase Plan (the “ESPP”). A total of 600 thousand shares were authorized for issuance to eligible participating employees upon adoption of the ESPP. The ESPP provides for consecutive 6-month offering periods beginning on or about August 16 and February 16 of each year. Eligible employees who elect to participate can contribute from 1% to 15% of their eligible compensation through payroll withholding. During any offering period, contribution rates cannot be changed. However, eligible employees may withdraw from the current offering period. Any contributions made prior to each purchase date in the case of withdrawal or termination of employment will be refunded. On each purchase date, eligible participating employees will purchase the shares at a price per share equal to 85% of the lesser of (i) the fair market value of the Company's stock on the first trading day of the offering period or (ii) the fair market value of the Company's stock on the purchase date (i.e., the last trading day of the offering period).
During the nine months ended September 30, 2024, 59 thousand shares were issued in connection with the purchase of common stock by participating employees. As of September 30, 2024, 435 thousand shares were available for future purchases.
Stock Options
Stock options granted under the Restated 2012 Plan and Previous 2012 Plan (collectively, the "Plans") generally vest based on continued service over four years and expire ten years from the date of grant.
A summary of the Company’s stock option activity during the nine months ended September 30, 2024 is as follows:
Outstanding OptionsWeighted Average Exercise
Price
Weighted Average Remaining
Contractual Life
Aggregate Intrinsic Value
(in thousands)(Years)(in thousands)
Balance as of December 31, 20231,447$97.98 6.5$142,302 
Granted194$161.93 
Exercised(161)$51.48 
Canceled(72)$130.47 
Balance as of September 30, 20241,408$110.47 6.5$35,988 
Vested and expected to vest as of September 30, 20241,268$106.81 6.3$35,653 
Exercisable as of September 30, 2024809$88.39 5.0$34,100 
Restricted Stock Units
RSUs granted under the Plans generally only contain a service-based vesting condition that is typically satisfied over four years.
Performance-based Restricted Stock Units ("PRSUs") granted under the Plans contain both service-based and performance-based vesting conditions. In February 2024, the Company granted PRSUs to its executive officers and certain other members of its senior leadership team. The performance-based vesting condition is satisfied upon the achievement of certain Company annual performance targets, including revenue growth and adjusted EBITDA margin, set by the Compensation and Talent Committee of the board of directors of the Company. The target PRSUs are scheduled to vest in three equal annual installments over a three-year period. Each annual installments at 200% of the annual target will be considered granted when the performance targets for the corresponding performance year is determined and approved. The actual number of the PRSUs earned and eligible to vest ranges from 0% to 200% of the annual target number of PRSUs granted based on the weighted-average achievement of such Company annual performance metrics set for the corresponding annual performance period. The vesting and release of the first and second installment is capped at 100% of the target number at the end of the first and second year, respectively, with cumulative achievement over 100%, if any, to be vested and released at the end of the third year, together with the vesting of the third installment. For PRSUs granted
under the Plans, any unvested PRSU award may be accelerated in part or in full upon the occurrence of certain events, such as death or disability, or a change in control, as defined in the grant agreement.
A summary of the Company’s RSU activity, inclusive of PRSU activity, during the nine months ended September 30, 2024 is as follows:
Outstanding RSUsWeighted Average Grant Date Fair Value
Per Share
(in thousands)
Balance as of December 31, 20231,074(1)$133.60 
Granted410(2)$159.26 
Vested(332)(3)$127.84 
Forfeited(178)(4)$139.68 
Balance as of September 30, 2024974(5)$145.25 
Outstanding and expected to vest as of September 30, 2024733$142.66 
(1)Included 139 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(2)Included 156 thousand PRSUs granted to certain executive officers in the nine months ended September 30, 2024.
(3)Included 64 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(4)Included 70 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(5)Included 161 thousand PRSUs granted to certain executive officers in 2024, 2023, 2022 and 2021.
Stock-based Compensation
The following table shows a summary of the stock-based compensation expense included in the condensed consolidated statements of operations:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Cost of revenues$2,081 $1,946 $5,967 $5,255 
Research and development5,448 5,671 15,911 15,734 
Sales and marketing3,649 3,229 11,020 8,580 
General and administrative9,159 7,676 23,556 20,991 
Total stock-based compensation, net of amounts capitalized (1)$20,337 $18,522 $56,454 $50,560 
(1)Total stock-based compensation expense capitalized was de minimis during the three and nine months ended September 30, 2024.
Of the total stock-based compensation expense in the table above, the Company recognized stock-based compensation expenses related to all PRSUs of $3.9 million and $2.7 million during the three months ended September 30, 2024 and 2023, respectively, and $8.0 million and $5.2 million for the nine months ended September 30, 2024 and 2023, respectively.
As of September 30, 2024, the Company had unrecognized stock-based compensation expenses of $21.6 million, $80.2 million, $3.9 million, and $1.0 million related to options, RSUs, PRSUs, and ESPP purchase rights, respectively, which are expected to be recognized over weighted-average periods of 2.4 years, 2.6 years, 0.3 years, and 0.4 years, respectively.
Share Repurchase Program
The Company's share repurchase program was authorized by the board of directors as follows:
Announcement DateAuthorized Dollar Value
(in millions)
February 12, 2018$100.0 
October 30, 2018100.0 
October 30, 2019100.0 
May 7, 2020100.0 
February 10, 2021100.0 
November 3, 2021200.0 
May 4, 2022200.0 
February 9, 2023100.0 
February 7, 2024200.0 
Total as of September 30, 2024$1,200.0 
Shares may be repurchased from time to time on the open market in accordance with Rule 10b-18 of the Exchange Act of 1934, including pursuant to a pre-set trading plan adopted in accordance with Rule 10b5-1 under the Exchange Act. All share repurchases have been made using cash resources. Repurchased shares are retired and reclassified as authorized and unissued shares of common stock. On retirement of the repurchased shares, common stock is reduced by an amount equal to the number of shares being retired multiplied by the par value. The excess amount that is retired over its par value is first allocated as a reduction to additional paid-in capital based on the original cost of additional paid-in capital per share of identified issuances. The remaining amount is allocated to accumulated deficit.
During the nine months ended September 30, 2024 and 2023, the Company repurchased 681 thousand shares and 1,203 thousand shares of its common stock for approximately $98.0 million and $147.7 million, respectively. As of September 30, 2024, approximately $185.7 million remained available for share repurchases pursuant to the Company's share repurchase program.
Excise tax on stock repurchases net of issue was immaterial to the Company's financial results and cash flows for the nine months ended September 30, 2024 and 2023 and the Company's financial position as of September 30, 2024 and December 31, 2023.
XML 28 R17.htm IDEA: XBRL DOCUMENT v3.24.3
Income Taxes
9 Months Ended
Sep. 30, 2024
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
The Company's income tax provision for interim periods is determined using an estimate of its annual effective tax rate, adjusted for discrete items, if any, that arise during the period. Each quarter, the Company updates its estimate of the annual effective tax rate, and if the estimated annual effective tax rate changes, the Company makes a cumulative adjustment in such period.
The Company's quarterly tax provision, and estimate of its annual effective tax rate, is subject to variation due to several factors, including variability in pretax income (or loss), the mix of jurisdictions to which such income relates, changes in how the Company does business, tax law developments and possible outcomes of audits. The Company's estimated effective tax rate for the year differs from the U.S. statutory rate of 21% primarily due to non-deductible stock-based compensation expense, state taxes, the benefit of U.S. federal income tax credits, the impact of mandatory capitalization of research expenses for U.S. tax purposes, and the benefits related to foreign-derived intangible income deduction.
The Company recorded an income tax provision of $6.1 million and $1.5 million for the three months ended September 30, 2024 and 2023, respectively, resulting in an effective tax rate of 11.7% and 3.1%, respectively. The increase in income tax provision for the three months ended September 30, 2024 compared to the three months ended September 30, 2023, was primarily due to the tax effect of an increase in pretax income and a decrease in excess tax benefits arising from stock-based compensation. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.
The Company recorded an income tax provision of $26.3 million and $20.1 million for the nine months ended September 30, 2024 and 2023, respectively, resulting in an effective tax rate of 16.8% and 15.3%, respectively. The increase in income tax provision for the nine months ended September 30, 2024 compared to the nine months ended September 30, 2023, was primarily due to the tax effect of an increase in pretax income. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.
As of September 30, 2024, the Company had unrecognized tax benefits of $14.3 million, of which $7.8 million, if recognized, would favorably impact the Company's effective tax rate. As of December 31, 2023, the Company had unrecognized tax benefits of $11.9 million, of which $6.1 million, if recognized, would favorably impact the Company's effective tax rate. Due to various factors, including uncertainties of administrative and regulatory processes in certain jurisdictions, the timing of the resolution of these unrecognized tax benefits is uncertain. It is possible that within the next twelve months the Company may receive additional tax adjustments that could result in changes to the Company's unrecognized tax benefits related to positions on prior year tax filings.
XML 29 R18.htm IDEA: XBRL DOCUMENT v3.24.3
Segment and Geographic Area Information
9 Months Ended
Sep. 30, 2024
Segment Reporting [Abstract]  
Segment and Geographic Area Information Segment and Geographic Area Information
Under ASC 280 Segment Reporting, operating segments are defined as components of an entity about which separate financial information is evaluated regularly by the chief operating decision maker in deciding how to allocate resources and in assessing performance. The Company operates in one segment and has only one reportable segment. The Company’s chief operating decision maker is the Chief Executive Officer, who makes operating decisions, assesses performance and allocates resources on a consolidated basis. All of the Company’s principal operations and decision-making functions are located in the United States.
Revenue by geographic area, based on the customer's billing address, is as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
United States$89,238 $85,377 $262,614 $246,348 
Foreign64,629 56,619 185,766 163,540 
Total revenues$153,867 $141,996 $448,380 $409,888 
Long-lived assets, which consist of Property and equipment, net and Operating leases - right of use asset, by geographic area, are as follows:
September 30,
2024
December 31,
2023
(in thousands)
United States$47,643 $42,622 
India19,404 9,952 
Rest of world1,590 2,416 
Total Long-lived Assets$68,637 $54,990 
XML 30 R19.htm IDEA: XBRL DOCUMENT v3.24.3
Net Income Per Share
9 Months Ended
Sep. 30, 2024
Earnings Per Share [Abstract]  
Net Income Per Share Net Income Per Share
The computations for basic and diluted net income per share are as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands, except per share data)(in thousands, except per share data)
Numerator:
Net income$46,212 $46,515 $129,715 $111,002 
Denominator:
Basic weighted average shares36,762 36,766 36,877 36,891 
Effect of potentially dilutive shares:
Stock options279 465 372 471 
Restricted stock units91 212 188 151 
Employee stock purchase plan
Diluted weighted average shares37,136 37,448 37,441 37,516 
Net income per share:
Basic$1.26 $1.27 $3.52 $3.01 
Diluted$1.24 $1.24 $3.46 $2.96 
Potentially dilutive shares not included in the calculation of diluted net income per share because doing so would be anti-dilutive are as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Stock options854762585925
Restricted stock units3111119186
Employee stock purchase plan149
Total anti-dilutive shares1,1657777041,120
XML 31 R20.htm IDEA: XBRL DOCUMENT v3.24.3
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2024
Sep. 30, 2023
Pay vs Performance Disclosure                
Net income $ 46,212 $ 43,772 $ 39,731 $ 46,515 $ 35,382 $ 29,105 $ 129,715 $ 111,002
XML 32 R21.htm IDEA: XBRL DOCUMENT v3.24.3
Insider Trading Arrangements
3 Months Ended 9 Months Ended
Sep. 30, 2024
shares
Sep. 30, 2024
shares
Trading Arrangements, by Individual    
Non-Rule 10b5-1 Arrangement Adopted false  
Non-Rule 10b5-1 Arrangement Terminated false  
Jeffrey P. Hank [Member]    
Trading Arrangements, by Individual    
Material Terms of Trading Arrangement  
On August 16, 2024, Jeffrey P. Hank, the chair of our board of directors, modified his existing Rule 10b5-1 trading arrangement dated November 21, 2023 (the “Original Plan”), which has the effect of terminating the Original Plan and adopting a new Rule 10b5-1 trading arrangement (the “New Plan”). The New Plan provides for the sale from time to time of an aggregate of up to 8,850 shares of our common stock plus an additional number of shares to be acquired on the date of the Company's 2025 Annual Meeting of Stockholders. Pursuant to the Company's non-employee director compensation program, each non-employee director who has served on our board of directors for at least six months prior to such date will be granted an annual award of restricted stock units on such day. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the New Plan is until June 30, 2025, or earlier if all transactions under the trading arrangement are completed.
Name Jeffrey P. Hank  
Title chair of our board of directors  
Expiration Date June 30, 2025  
Aggregate Available 8,850 8,850
Joo Mi Kim [Member]    
Trading Arrangements, by Individual    
Material Terms of Trading Arrangement  
On August 21, 2024, Joo Mi Kim, our Chief Financial Officer, adopted a Rule 10b5-1 trading arrangement providing for the sale from time to time of an aggregate of up to 54,319 shares of our common stock, which represents the gross number of shares authorized to be sold during the duration of the plan, before excluding any shares withheld by the company to satisfy its income tax withholding in connection with the net settlement of the equity awards. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the trading arrangement is until November 20, 2025, or earlier if all transactions under the trading arrangement are completed.
Name Joo Mi Kim  
Title Chief Financial Officer  
Rule 10b5-1 Arrangement Adopted true  
Adoption Date August 21, 2024  
Expiration Date November 20, 2025  
Arrangement Duration 456 days  
Aggregate Available 54,319 54,319
Bruce Posey [Member]    
Trading Arrangements, by Individual    
Material Terms of Trading Arrangement  
On August 21, 2024, Bruce Posey, our Chief Legal Officer, adopted a Rule 10b5-1 trading arrangement providing for the sale from time to time of an aggregate of up to 54,586 shares of our common stock, which represents the gross number of shares authorized to be sold during the duration of the plan, before excluding any shares withheld by the company to satisfy its income tax withholding in connection with the net settlement of the equity awards. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the trading arrangement is until December 2, 2025, or earlier if all transactions under the trading arrangement are completed.
Name Bruce Posey  
Title Chief Legal Officer  
Rule 10b5-1 Arrangement Adopted true  
Adoption Date August 21, 2024  
Expiration Date December 2, 2025  
Arrangement Duration 468 days  
Aggregate Available 54,586 54,586
Original Plan [Member] | Jeffrey P. Hank [Member]    
Trading Arrangements, by Individual    
Rule 10b5-1 Arrangement Terminated true  
Termination Date August 16, 2024  
Arrangement Duration 269 days  
New Plan [Member] | Jeffrey P. Hank [Member]    
Trading Arrangements, by Individual    
Rule 10b5-1 Arrangement Adopted true  
Adoption Date August 16, 2024  
Arrangement Duration 318 days  
XML 33 R22.htm IDEA: XBRL DOCUMENT v3.24.3
Description of Business and Summary of Significant Accounting Policies (Policies)
9 Months Ended
Sep. 30, 2024
Accounting Policies [Abstract]  
Basis of Presentation
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements and condensed footnotes have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP") for interim financial information as well as the instructions to Form 10-Q and the rules and regulations of the U.S. Securities and Exchange Commission ("SEC"). Certain information and disclosures normally included in the financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The condensed consolidated balance sheet as of December 31, 2023, included herein, was derived from the audited financial statements as of that date but does not include all disclosures, including notes required by U.S. GAAP. In the opinion of management, the accompanying unaudited condensed consolidated financial statements reflect all adjustments, which include only normal recurring adjustments, necessary for the fair statement of the financial position, results of operations and cash flows for the interim periods. The results of operations for the three and nine months ended September 30, 2024 are not necessarily indicative of the results of operations expected for the entire year ending December 31, 2024 or for any other future annual or interim periods. These condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 filed with the SEC on February 22, 2024.
Use of Estimates
Use of Estimates
The preparation of the unaudited condensed consolidated financial statements in conformity with U.S. GAAP requires management to make certain estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of assets and liabilities at the date of the condensed consolidated financial statements and the reported results of operations during the reporting period. The Company’s management regularly assesses these estimates, which primarily affect revenue recognition, allowance for credit loss, the valuation of goodwill and intangible assets, leases, stock-based compensation and income tax provision. Actual results could differ from those estimates and such differences may be material to the accompanying unaudited condensed consolidated financial statements.
Recently Adopted Accounting Pronouncements and Recently Issued Accounting Pronouncements Not Yet Adopted
Recently Adopted Accounting Pronouncements
None.
Recently Issued Accounting Pronouncements Not Yet Adopted
In November 2023, the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2023-07 requiring enhanced segment disclosures. The ASU requires disclosure of significant segment expenses regularly provided to the chief operating decision maker ("CODM") included within segment operating profit or loss. Additionally, the ASU requires a description of how the CODM utilizes segment operating profit or loss to assess segment performance. The requirements of the ASU are effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company's annual reporting requirements will be effective for fiscal 2024 and interim reporting requirements will be effective beginning with the first quarter of fiscal 2025. Early adoption is permitted and retrospective application is required for all periods presented. The Company is in the process of analyzing the impact of the ASU on related disclosures.
In December 2023, the FASB issued ASU 2023-09 requiring improvements to income tax disclosures. The new ASU requires disclosure of disaggregated information about the effective tax rate and income taxes paid. The requirements of the ASU are effective for annual periods beginning after December 15, 2024 and are to be applied on a prospective basis. The Company's annual reporting requirements will be effective for fiscal year 2025. Companies can choose to early adopt and apply the guidance retrospectively. The Company is in the process of analyzing the impact of the ASU on related disclosures.
There have been no material changes to the Company’s significant accounting policies set forth in "Note 1" of Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023.
XML 34 R23.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments (Tables)
9 Months Ended
Sep. 30, 2024
Fair Value Disclosures [Abstract]  
Schedule of Fair Value of Financial Assets and Liabilities Measured on Recurring Basis
The following table sets forth by level within the fair value hierarchy the fair value of the Company's financial assets and liabilities measured at fair value on a recurring basis:
September 30, 2024
Level 1Level 2Fair Value
(in thousands)
Money market funds$2,172 $— $2,172 
Commercial paper— 14,383 14,383 
U.S. Treasury and government agencies— 231,248 231,248 
Corporate bonds— 121,371 121,371 
Asset-backed securities— 8,838 8,838 
Foreign currency forward contracts— 19 19 
Total assets$2,172 $375,859 $378,031 
Foreign currency forward contracts$— $2,569 $2,569 
Total liabilities$— $2,569 $2,569 
December 31, 2023
Level 1Level 2Fair Value
(in thousands)
Money market funds$87 $— $87 
Commercial paper— 54,279 54,279 
U.S. Treasury and government agencies— 208,536 208,536 
Corporate bonds— 56,465 56,465 
Asset-backed securities— 13,881 13,881 
Foreign currency forward contracts— 111 111 
Total assets$87 $333,272 $333,359 
Foreign currency forward contracts$— $1,986 $1,986 
Total liabilities$— $1,986 $1,986 
Schedule of Cash Equivalents and Marketable Securities
The Company's cash equivalents and marketable securities consist of the following:
September 30, 2024
Amortized CostUnrealized GainsUnrealized LossesFair Value
(in thousands)
Cash equivalents: (1)
Money market funds$2,172 $— $— $2,172 
Commercial paper1,000 — — 1,000 
U.S. Treasury and government agencies37,247 (1)37,247 
Total40,419 (1)40,419 
Short-term marketable securities:    
Commercial paper13,376 (1)13,383 
Corporate bonds38,697 148 (9)38,836 
U.S. Treasury and government agencies98,450 252 (8)98,694 
Total150,523 408 (18)150,913 
Long-term marketable securities:
Corporate bonds81,514 1,026 (5)82,535 
Asset-backed securities8,725 113 — 8,838 
U.S. Treasury and government agencies94,556 759 (8)95,307 
Total184,795 1,898 (13)186,680 
Total$375,737 $2,307 $(32)$378,012 
(1)Excludes cash of $195.0 million.
December 31, 2023
Amortized CostUnrealized GainsUnrealized LossesFair Value
(in thousands)
Cash equivalents: (2)
Money market funds$87 $— $— $87 
U.S. Treasury and government agencies54,620 — 54,624 
Total54,707 — 54,711 
Short-term marketable securities:
Commercial paper54,254 32 (7)54,279 
Corporate bonds23,013 (149)22,865 
U.S. Treasury and government agencies144,901 52 (204)144,749 
Total222,168 85 (360)221,893 
Long-term marketable securities:
Corporate bonds33,337 285 (22)33,600 
Asset-backed securities13,785 102 (6)13,881 
U.S. Treasury and government agencies9,116 49 (2)9,163 
Total56,238 436 (30)56,644 
Total$333,113 $525 $(390)$333,248 
(2)Excludes cash of $149.0 million.
Schedule of Gross Unrealized Losses and Fair Value of Marketable Securities in an Unrealized Loss Position
The following table summarizes the gross unrealized losses and fair value of the Company's marketable securities that were in an unrealized loss position aggregated by length of time:
September 30, 2024
Less than 12 months12 months or longerTotal
Fair ValueGross Unrealized LossesFair ValueGross Unrealized LossesFair ValueGross Unrealized Losses
(in thousands)
Commercial paper$7,968 $(1)$— $— $7,968 $(1)
Corporate bonds10,730 (7)668 (7)11,398 (14)
U.S. Treasury and government agencies29,689 (17)— — 29,689 (17)
Total$48,387 $(25)$668 $(7)$49,055 $(32)
December 31, 2023
Less than 12 months12 months or longerTotal
Fair ValueGross Unrealized LossesFair ValueGross Unrealized LossesFair ValueGross Unrealized Losses
(in thousands)
Commercial paper$24,838 $(7)$— $— $24,838 $(7)
Asset-backed securities— — 1,485 (6)1,485 (6)
Corporate bonds— — 20,717 (171)20,717 (171)
U.S. Treasury and government agencies43,373 (18)18,172 (188)61,545 (206)
Total$68,211 $(25)$40,374 $(365)$108,585 $(390)
Schedule of the Fair Value of Cash Equivalents and Marketable Securities by Contractual Maturity
The following summarizes the fair value of marketable securities by contractual maturity:
September 30, 2024
Amortized CostFair Value
(in thousands)
Due within One Year$190,942 $191,332 
Due after One Year through Five Years176,070 177,842 
Asset-backed securities8,725 8,838 
Total$375,737 $378,012 
Schedule of Derivative Instruments
The following summarizes the fair value of derivative financial instruments as of September 30, 2024 and December 31, 2023:
September 30,
2024
December 31,
2023
(in thousands)
Assets
Foreign currency forward contracts designated as cash flow hedge$— $63 
Foreign currency forward contracts not designated as hedging instruments19 48 
Total$19 $111 
Liabilities
Foreign currency forward contracts designated as cash flow hedge$2,474 $1,502 
Foreign currency forward contracts not designated as hedging instruments95 484 
Total$2,569 $1,986 
Schedule of Gains (Losses) Recognized from Forward Contracts and Other Foreign Currency Transactions in Other Income (Expense)
The following summarizes the gains (losses) recognized from forward contracts and other foreign currency transactions in other income (expense), net in the condensed consolidated statements of operations:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Net gains (losses) from non-designated forward contracts$(896)$540 $(457)$690 
Other foreign currency transactions gains (losses)1,501 (1,248)(958)(1,979)
Total foreign exchange gains (losses), net$605 $(708)$(1,415)$(1,289)
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.24.3
Accumulated Other Comprehensive Income (Loss) (Tables)
9 Months Ended
Sep. 30, 2024
Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]  
Schedule of Accumulated Other Comprehensive Income (Loss)
The components and changes in accumulated other comprehensive income (loss) for the three and nine months ended September 30, 2024 and 2023 were as follows:
Available-for-Sale Debt SecuritiesCash Flow HedgesTotal
(in thousands)
Balances at December 31, 2023$108 $(1,812)$(1,704)
Change in unrealized gains (losses) during the period(436)1,222 786 
Amount reclassified into income during the period— 218 218 
Tax effect29 (336)(307)
Net change during the period(407)1,104 697 
Balances at March 31, 2024$(299)$(708)$(1,007)
Change in unrealized gains (losses) during the period(221)465 244 
Amount reclassified into income during the period— 414 414 
Tax effect— (185)(185)
Net change during the period(221)694 473 
Balances at June 30, 2024$(520)$(14)$(534)
Change in unrealized gains (losses) during the period2,796 (3,065)(269)
Amount reclassified into income during the period— 423 423 
Tax effect(540)627 87 
Net change during the period2,256 (2,015)241 
Balances at September 30, 2024$1,736 $(2,029)$(293)
Balances at December 31, 2022$(2,705)$758 $(1,947)
Change in unrealized gains (losses) during the period1,131 (443)688 
Amount reclassified into income during the period— (534)(534)
Tax effect— 222 222 
Net change during the period1,131 (755)376 
Balances at March 31, 2023$(1,574)$$(1,571)
Change in unrealized gains (losses) during the period312 65 377 
Amount reclassified into income during the period— (665)(665)
Tax effect— 143 143 
Net change during the period312 (457)(145)
Balances at June 30, 2023$(1,262)$(454)$(1,716)
Change in unrealized gains (losses) during the period339 1,249 1,588 
Amount reclassified into income during the period— (580)(580)
Tax effect— (159)(159)
Net change during the period339 510 849 
Balances at September 30, 2023$(923)$56 $(867)
Schedule of Amounts Reclassified from AOCI to the Statements of Operations
The effects on income before income taxes of amounts reclassified from AOCI to the condensed consolidated statements of operations were as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Reclassification of AOCI - Cash flow hedges
Revenues$(320)$721 $(974)$2,918 
Cost of revenues(25)(32)(19)(262)
Research and development(64)(89)(51)(724)
Sales and marketing(6)(6)(5)(45)
General and administrative(8)(14)(6)(108)
Total$(423)$580 $(1,055)$1,779 
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.24.3
Property and Equipment, Net (Tables)
9 Months Ended
Sep. 30, 2024
Property, Plant and Equipment [Abstract]  
Schedule of Property, Plant and Equipment, Net
Property and equipment, net, consists of the following:
September 30,
2024
December 31,
2023
(in thousands)
Computer equipment$182,926 $179,002 
Computer software26,157 26,133 
Leasehold improvements21,894 20,924 
Scanner appliances18,661 18,369 
Furniture, fixtures and equipment5,087 6,699 
Total property and equipment254,725 251,127 
Less: accumulated depreciation and amortization(227,382)(218,528)
Property and equipment, net$27,343 $32,599 
XML 37 R26.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue from Contracts with Customers (Tables)
9 Months Ended
Sep. 30, 2024
Revenue Recognition [Abstract]  
Schedule of Expected Revenue from Performance Obligations
The following table sets forth the expected revenue from all remaining performance obligations as of September 30, 2024:
(in thousands)
2024 (remaining three months)$63,367 
2025193,560 
2026100,797 
202724,172 
20281,018 
2029 and thereafter387 
Total$383,301 
Schedule of Revenue by Sales Channel
Revenues by sales channel are as follows:
Three Months EndedNine Months Ended
September 30,September 30,
2024202320242023
(in thousands)(in thousands)
Direct$81,636 $80,499 $242,065 $234,410 
Partner72,231 61,497 206,315 175,478 
Total$153,867 $141,996 $448,380 $409,888 
Schedule of Deferred Costs to Obtain Contracts
Deferred costs to obtain contracts are as follows:
September 30,
2024
December 31,
2023
(in thousands)
Current$6,796 $5,858 
Noncurrent$14,041 $11,844 
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible Assets, Net (Tables)
9 Months Ended
Sep. 30, 2024
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of the Carrying Value of Intangible Assets
The carrying values of intangible assets are as follows:
September 30, 2024
(in thousands)Weighted Average Life (Years)CostAccumulated AmortizationNet Book Value
Developed technology4.6$40,141 $(32,730)$7,411 
Patent licenses14.01,387 (1,387)— 
Assembled workforce2.0359 (359)— 
Total intangibles subject to amortization$41,887 $(34,476)$7,411 
Intangible assets not subject to amortization40 
Total intangible assets, net$7,451 
 December 31, 2023
(in thousands)Weighted Average Life (Years)CostAccumulated AmortizationNet Book Value
Developed technology4.6$40,141 $(30,667)$9,474 
Patent licenses14.01,387 (1,322)65 
Assembled workforce2.0359 (223)136 
Total intangibles subject to amortization$41,887 $(32,212)$9,675 
Intangible assets not subject to amortization40 
Total intangible assets, net$9,715 
Schedule of Finite-Lived Intangible Assets, Future Amortization Expense
As of September 30, 2024, the Company expects amortization expense in future periods to be as follows:
(in thousands)
2024 (remaining three months)$640 
20252,556 
20262,477 
20271,738 
Total expected future amortization expense$7,411 
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.24.3
Leases (Tables)
9 Months Ended
Sep. 30, 2024
Leases [Abstract]  
Schedule of Lease Cost
Supplemental cash flow information related to operating leases was as follows:
Nine Months Ended
September 30,
20242023
(in thousands)
Cash payments included in the measurement of lease liabilities$10,665 $11,350 
Lease liabilities arising from obtaining right-of-use assets$28,157 $121 
The weighted average remaining lease term and the weighted average discount rate of the Company's operating leases were as follows:
September 30,
2024
December 31,
2023
Weighted average remaining lease term (years)4.43.1
Weighted average discount rate7.4 %5.2 %
Schedule of Lease Maturities
Maturities of the Company's operating lease liabilities as of September 30, 2024 are as follows:
(in thousands)
2024 (remaining three months)$2,865 
202512,593 
202612,194 
202712,249 
20289,473 
2029 and thereafter7,377 
Total minimum lease payments56,751 
Less: interest(9,152)
Present value of net minimum lease payments$47,599 
XML 40 R29.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation (Tables)
9 Months Ended
Sep. 30, 2024
Equity [Abstract]  
Schedule of Stock Option Activity
A summary of the Company’s stock option activity during the nine months ended September 30, 2024 is as follows:
Outstanding OptionsWeighted Average Exercise
Price
Weighted Average Remaining
Contractual Life
Aggregate Intrinsic Value
(in thousands)(Years)(in thousands)
Balance as of December 31, 20231,447$97.98 6.5$142,302 
Granted194$161.93 
Exercised(161)$51.48 
Canceled(72)$130.47 
Balance as of September 30, 20241,408$110.47 6.5$35,988 
Vested and expected to vest as of September 30, 20241,268$106.81 6.3$35,653 
Exercisable as of September 30, 2024809$88.39 5.0$34,100 
Schedule of RSU Activity
A summary of the Company’s RSU activity, inclusive of PRSU activity, during the nine months ended September 30, 2024 is as follows:
Outstanding RSUsWeighted Average Grant Date Fair Value
Per Share
(in thousands)
Balance as of December 31, 20231,074(1)$133.60 
Granted410(2)$159.26 
Vested(332)(3)$127.84 
Forfeited(178)(4)$139.68 
Balance as of September 30, 2024974(5)$145.25 
Outstanding and expected to vest as of September 30, 2024733$142.66 
(1)Included 139 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(2)Included 156 thousand PRSUs granted to certain executive officers in the nine months ended September 30, 2024.
(3)Included 64 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(4)Included 70 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.
(5)Included 161 thousand PRSUs granted to certain executive officers in 2024, 2023, 2022 and 2021.
Schedule of Stock-Based Compensation Expense in Statements of Operations
The following table shows a summary of the stock-based compensation expense included in the condensed consolidated statements of operations:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Cost of revenues$2,081 $1,946 $5,967 $5,255 
Research and development5,448 5,671 15,911 15,734 
Sales and marketing3,649 3,229 11,020 8,580 
General and administrative9,159 7,676 23,556 20,991 
Total stock-based compensation, net of amounts capitalized (1)$20,337 $18,522 $56,454 $50,560 
(1)Total stock-based compensation expense capitalized was de minimis during the three and nine months ended September 30, 2024.
Schedule of Share Repurchase Program
The Company's share repurchase program was authorized by the board of directors as follows:
Announcement DateAuthorized Dollar Value
(in millions)
February 12, 2018$100.0 
October 30, 2018100.0 
October 30, 2019100.0 
May 7, 2020100.0 
February 10, 2021100.0 
November 3, 2021200.0 
May 4, 2022200.0 
February 9, 2023100.0 
February 7, 2024200.0 
Total as of September 30, 2024$1,200.0 
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.24.3
Segment and Geographic Area Information (Tables)
9 Months Ended
Sep. 30, 2024
Segment Reporting [Abstract]  
Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas
Revenue by geographic area, based on the customer's billing address, is as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
United States$89,238 $85,377 $262,614 $246,348 
Foreign64,629 56,619 185,766 163,540 
Total revenues$153,867 $141,996 $448,380 $409,888 
Long-lived assets, which consist of Property and equipment, net and Operating leases - right of use asset, by geographic area, are as follows:
September 30,
2024
December 31,
2023
(in thousands)
United States$47,643 $42,622 
India19,404 9,952 
Rest of world1,590 2,416 
Total Long-lived Assets$68,637 $54,990 
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.24.3
Net Income Per Share (Tables)
9 Months Ended
Sep. 30, 2024
Earnings Per Share [Abstract]  
Schedule of Earnings Per Share, Basic and Diluted
The computations for basic and diluted net income per share are as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands, except per share data)(in thousands, except per share data)
Numerator:
Net income$46,212 $46,515 $129,715 $111,002 
Denominator:
Basic weighted average shares36,762 36,766 36,877 36,891 
Effect of potentially dilutive shares:
Stock options279 465 372 471 
Restricted stock units91 212 188 151 
Employee stock purchase plan
Diluted weighted average shares37,136 37,448 37,441 37,516 
Net income per share:
Basic$1.26 $1.27 $3.52 $3.01 
Diluted$1.24 $1.24 $3.46 $2.96 
Schedule of Potentially Dilutive Shares Excluded from Diluted Net Income Per Share Calculation
Potentially dilutive shares not included in the calculation of diluted net income per share because doing so would be anti-dilutive are as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
2024202320242023
(in thousands)(in thousands)
Stock options854762585925
Restricted stock units3111119186
Employee stock purchase plan149
Total anti-dilutive shares1,1657777041,120
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Assets and Liabilities (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Foreign currency forward contracts $ 2,569 $ 1,986
Fair Value, Recurring    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Money market funds 2,172 87
Commercial paper 14,383 54,279
U.S. Treasury and government agencies 231,248 208,536
Corporate bonds 121,371 56,465
Asset-backed securities 8,838 13,881
Foreign currency forward contracts 19 111
Total assets 378,031 333,359
Foreign currency forward contracts 2,569 1,986
Total liabilities 2,569 1,986
Level 1 | Fair Value, Recurring    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Money market funds 2,172 87
Commercial paper 0 0
U.S. Treasury and government agencies 0 0
Corporate bonds 0 0
Asset-backed securities 0 0
Foreign currency forward contracts 0 0
Total assets 2,172 87
Foreign currency forward contracts 0 0
Total liabilities 0 0
Level 2 | Fair Value, Recurring    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Money market funds 0 0
Commercial paper 14,383 54,279
U.S. Treasury and government agencies 231,248 208,536
Corporate bonds 121,371 56,465
Asset-backed securities 8,838 13,881
Foreign currency forward contracts 19 111
Total assets 375,859 333,272
Foreign currency forward contracts 2,569 1,986
Total liabilities $ 2,569 $ 1,986
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Cash and Cash Equivalents (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost $ 375,737 $ 333,113
Unrealized Gains 2,307 525
Unrealized Losses (32) (390)
Fair Value 378,012 333,248
Cash, excluded 195,000 149,000
Cash equivalents    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 40,419 54,707
Unrealized Gains 1 4
Unrealized Losses (1) 0
Fair Value 40,419 54,711
Short-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 150,523 222,168
Unrealized Gains 408 85
Unrealized Losses (18) (360)
Fair Value 150,913 221,893
Long-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 184,795 56,238
Unrealized Gains 1,898 436
Unrealized Losses (13) (30)
Fair Value 186,680 56,644
Commercial paper | Short-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 13,376 54,254
Unrealized Gains 8 32
Unrealized Losses (1) (7)
Fair Value 13,383 54,279
Corporate bonds | Short-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 38,697 23,013
Unrealized Gains 148 1
Unrealized Losses (9) (149)
Fair Value 38,836 22,865
Corporate bonds | Long-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 81,514 33,337
Unrealized Gains 1,026 285
Unrealized Losses (5) (22)
Fair Value 82,535 33,600
Asset-backed securities | Long-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 8,725 13,785
Unrealized Gains 113 102
Unrealized Losses 0 (6)
Fair Value 8,838 13,881
U.S. Treasury and government agencies | Short-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 98,450 144,901
Unrealized Gains 252 52
Unrealized Losses (8) (204)
Fair Value 98,694 144,749
U.S. Treasury and government agencies | Long-term marketable securities    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 94,556 9,116
Unrealized Gains 759 49
Unrealized Losses (8) (2)
Fair Value 95,307 9,163
Money market funds | Cash equivalents    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 2,172 87
Unrealized Gains 0 0
Unrealized Losses 0 0
Fair Value 2,172 87
Commercial paper | Cash equivalents    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 1,000  
Unrealized Gains 0  
Unrealized Losses 0  
Fair Value 1,000  
U.S. Treasury and government agencies | Cash equivalents    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Amortized Cost 37,247 54,620
Unrealized Gains 1 4
Unrealized Losses (1) 0
Fair Value $ 37,247 $ 54,624
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Summary of Securities in Unrealized Loss Positions (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Less than 12 months    
Fair Value $ 48,387 $ 68,211
Gross Unrealized Losses (25) (25)
12 months or longer    
Fair Value 668 40,374
Gross Unrealized Losses (7) (365)
Total    
Fair Value 49,055 108,585
Gross Unrealized Losses (32) (390)
Commercial paper    
Less than 12 months    
Fair Value 7,968 24,838
Gross Unrealized Losses (1) (7)
12 months or longer    
Fair Value 0 0
Gross Unrealized Losses 0 0
Total    
Fair Value 7,968 24,838
Gross Unrealized Losses (1) (7)
Asset-backed securities    
Less than 12 months    
Fair Value   0
Gross Unrealized Losses   0
12 months or longer    
Fair Value   1,485
Gross Unrealized Losses   (6)
Total    
Fair Value   1,485
Gross Unrealized Losses   (6)
Corporate bonds    
Less than 12 months    
Fair Value 10,730 0
Gross Unrealized Losses (7) 0
12 months or longer    
Fair Value 668 20,717
Gross Unrealized Losses (7) (171)
Total    
Fair Value 11,398 20,717
Gross Unrealized Losses (14) (171)
U.S. Treasury and government agencies    
Less than 12 months    
Fair Value 29,689 43,373
Gross Unrealized Losses (17) (18)
12 months or longer    
Fair Value 0 18,172
Gross Unrealized Losses 0 (188)
Total    
Fair Value 29,689 61,545
Gross Unrealized Losses $ (17) $ (206)
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Summary of the Fair Value of Marketable Securities (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Amortized Cost    
Due after Five Years through Ten Years $ 190,942  
Due after One Year through Five Years 176,070  
Asset-backed securities 8,725  
Amortized Cost 375,737 $ 333,113
Fair Value    
Due within One Year 191,332  
Due after One Year through Five Years 177,842  
Asset-backed securities 8,838  
Fair Value $ 378,012 $ 333,248
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Narrative (Details)
€ in Millions, ₨ in Millions, £ in Millions, $ in Millions, $ in Millions
Sep. 30, 2024
USD ($)
Sep. 30, 2024
EUR (€)
Sep. 30, 2024
GBP (£)
Sep. 30, 2024
INR (₨)
Sep. 30, 2024
CAD ($)
Dec. 31, 2023
EUR (€)
Dec. 31, 2023
GBP (£)
Dec. 31, 2023
INR (₨)
Dec. 31, 2023
CAD ($)
Dec. 31, 2018
USD ($)
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]                    
Investments                   $ 2.5
Foreign Exchange Contract | Designated as Hedging Instrument | Cash Flow Hedging                    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]                    
Derivative   € 46.4 £ 18.0 ₨ 4,273.0   € 48.5 £ 14.6 ₨ 4,042.0    
Foreign Exchange Contract | Not Designated as Hedging Instrument                    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]                    
Derivative   € 12.5 £ 5.1 ₨ 1,208.0 $ 1.2 € 19.2 £ 6.0 ₨ 440.0 $ 1.0  
Foreign Exchange Contracts for GBP and Euro | Designated as Hedging Instrument | Cash Flow Hedging                    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]                    
Unrealized loss $ 1.5                  
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Summary of Derivative Financial Instruments (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Foreign currency forward contracts, asset $ 19 $ 111
Foreign currency forward contracts, liability 2,569 1,986
Designated as Hedging Instrument    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Foreign currency forward contracts, asset 0 63
Foreign currency forward contracts, liability 2,474 1,502
Not Designated as Hedging Instrument    
Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]    
Foreign currency forward contracts, asset 19 48
Foreign currency forward contracts, liability $ 95 $ 484
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.24.3
Fair Value of Financial Instruments - Amounts Recognized In Statement of Operations (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Fair Value Disclosures [Abstract]        
Net gains (losses) from non-designated forward contracts $ (896) $ 540 $ (457) $ 690
Other foreign currency transactions gains (losses) 1,501 (1,248) (958) (1,979)
Total foreign exchange gains (losses), net $ 605 $ (708) $ (1,415) $ (1,289)
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.24.3
Accumulated Other Comprehensive Income (Loss) - Components and Changes (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2024
Sep. 30, 2023
AOCI Attributable to Parent, Net of Tax [Roll Forward]                
Beginning balance $ 427,795 $ 404,202 $ 368,174 $ 277,018 $ 267,822 $ 289,129 $ 368,174 $ 289,129
Change in unrealized gains (losses) during the period (269) 244 786 1,588 377 688    
Amount reclassified into income during the period 423 414 218 (580) (665) (534)    
Tax effect 87 (185) (307) (159) 143 222    
Other comprehensive income, net of tax 241 473 697 849 (145) 376 1,411 1,080
Ending balance 449,595 427,795 404,202 322,917 277,018 267,822 449,595 322,917
Total                
AOCI Attributable to Parent, Net of Tax [Roll Forward]                
Beginning balance (534) (1,007) (1,704) (1,716) (1,571) (1,947) (1,704) (1,947)
Other comprehensive income, net of tax 241 473 697 849 (145) 376    
Ending balance (293) (534) (1,007) (867) (1,716) (1,571) (293) (867)
Available-for-Sale Debt Securities                
AOCI Attributable to Parent, Net of Tax [Roll Forward]                
Beginning balance (520) (299) 108 (1,262) (1,574) (2,705) 108 (2,705)
Change in unrealized gains (losses) during the period 2,796 (221) (436) 339 312 1,131    
Amount reclassified into income during the period 0 0 0 0 0 0    
Tax effect (540) 0 29 0 0 0    
Other comprehensive income, net of tax 2,256 (221) (407) 339 312 1,131    
Ending balance 1,736 (520) (299) (923) (1,262) (1,574) 1,736 (923)
Cash Flow Hedges                
AOCI Attributable to Parent, Net of Tax [Roll Forward]                
Beginning balance (14) (708) (1,812) (454) 3 758 (1,812) 758
Change in unrealized gains (losses) during the period (3,065) 465 1,222 1,249 65 (443)    
Amount reclassified into income during the period 423 414 218 (580) (665) (534)    
Tax effect 627 (185) (336) (159) 143 222    
Other comprehensive income, net of tax (2,015) 694 1,104 510 (457) (755)    
Ending balance $ (2,029) $ (14) $ (708) $ 56 $ (454) $ 3 $ (2,029) $ 56
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.24.3
Accumulated Other Comprehensive Income (Loss) - Amounts Reclassified from AOCI (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Reclassification of AOCI - Cash flow hedges        
Revenues $ 153,867 $ 141,996 $ 448,380 $ 409,888
Cost of revenues (28,832) (26,739) (82,445) (80,355)
Research and development (28,901) (27,782) (83,550) (83,001)
Sales and marketing (32,686) (27,881) (94,240) (79,750)
General and administrative (18,494) (15,999) (50,362) (45,182)
Total 52,323 48,023 155,992 131,059
Other income (expense), net 605 (708) (1,381) (1,883)
Reclassification out of Accumulated Other Comprehensive Income | Cash Flow Hedges        
Reclassification of AOCI - Cash flow hedges        
Revenues (320) 721 (974) 2,918
Cost of revenues (25) (32) (19) (262)
Research and development (64) (89) (51) (724)
Sales and marketing (6) (6) (5) (45)
General and administrative (8) (14) (6) (108)
Total (423) 580 (1,055) 1,779
Reclassification out of Accumulated Other Comprehensive Income | Available-for-Sale Debt Securities        
Reclassification of AOCI - Cash flow hedges        
Other income (expense), net $ 0 $ 0 $ 0 $ 0
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.24.3
Property and Equipment, Net - Property and Equipment, Net (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Property, Plant and Equipment [Line Items]    
Total property and equipment $ 254,725 $ 251,127
Less: accumulated depreciation and amortization (227,382) (218,528)
Property and equipment, net 27,343 32,599
Computer equipment    
Property, Plant and Equipment [Line Items]    
Computer equipment 182,926 179,002
Computer software    
Property, Plant and Equipment [Line Items]    
Total property and equipment 26,157 26,133
Leasehold improvements    
Property, Plant and Equipment [Line Items]    
Total property and equipment 21,894 20,924
Scanner appliances    
Property, Plant and Equipment [Line Items]    
Total property and equipment 18,661 18,369
Furniture, fixtures and equipment    
Property, Plant and Equipment [Line Items]    
Total property and equipment $ 5,087 $ 6,699
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.24.3
Property and Equipment, Net - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Property, Plant and Equipment [Line Items]          
Property and equipment, net $ 27,343   $ 27,343   $ 32,599
Depreciation and amortization 3,600 $ 5,800 12,100 $ 18,400  
Scanner Appliances and Other Computer Equipment          
Property, Plant and Equipment [Line Items]          
Property and equipment, net 9,400   9,400   10,100
Scanner Appliances and Other Computer Equipment Not Placed In Service          
Property, Plant and Equipment [Line Items]          
Property and equipment, net $ 5,800   $ 5,800   $ 6,400
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue from Contracts with Customers - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Dec. 31, 2022
Revenue Recognition [Abstract]            
Revenue from contract with customer, revenue recognized $ 66,800 $ 57,200 $ 296,500 $ 257,400    
Deferred revenue         $ 364,900 $ 317,200
Amortization expense related to deferred costs 1,800 1,500 5,200 $ 4,400    
Impairment loss related to deferred contract costs 0 $ 0        
Carrying value of accounts receivable           121,800
Deferred revenues, current 337,821   337,821   333,267 293,700
Deferred revenues, noncurrent $ 23,116   $ 23,116   $ 31,671 $ 23,500
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details)
$ in Thousands
Sep. 30, 2024
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 383,301
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-10-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 63,367
Remaining performance obligation, period 3 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 193,560
Remaining performance obligation, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 100,797
Remaining performance obligation, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 24,172
Remaining performance obligation, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2028-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 1,018
Remaining performance obligation, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2029-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation $ 387
Remaining performance obligation, period
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue from Contracts with Customers - Revenue by Sales Channel (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Revenues $ 153,867 $ 141,996 $ 448,380 $ 409,888
Direct        
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Revenues 81,636 80,499 242,065 234,410
Partner        
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Revenues $ 72,231 $ 61,497 $ 206,315 $ 175,478
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue from Contracts with Customers - Capitalized Cost to Obtain Contracts, Current and Noncurrent (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Revenue Recognition [Abstract]    
Current $ 6,796 $ 5,858
Noncurrent $ 14,041 $ 11,844
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible Assets, Net- Carrying Value of Intangible Assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Finite-Lived Intangible Assets [Line Items]    
Cost $ 41,887 $ 41,887
Accumulated Amortization (34,476) (32,212)
Total intangibles 7,411 9,675
Intangible assets, net 7,451 9,715
Intangible assets not subject to amortization    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets not subject to amortization $ 40 $ 40
Developed technology    
Finite-Lived Intangible Assets [Line Items]    
Weighted Average Life (Years) 4 years 7 months 6 days 4 years 7 months 6 days
Cost $ 40,141 $ 40,141
Accumulated Amortization (32,730) (30,667)
Total intangibles $ 7,411 $ 9,474
Patent licenses    
Finite-Lived Intangible Assets [Line Items]    
Weighted Average Life (Years) 14 years 14 years
Cost $ 1,387 $ 1,387
Accumulated Amortization (1,387) (1,322)
Total intangibles $ 0 $ 65
Assembled workforce    
Finite-Lived Intangible Assets [Line Items]    
Weighted Average Life (Years) 2 years 2 years
Cost $ 359 $ 359
Accumulated Amortization (359) (223)
Total intangibles $ 0 $ 136
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible Assets, Net - Narrative (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Goodwill and Intangible Assets Disclosure [Abstract]        
Intangible asset amortization expense $ 0.7 $ 0.8 $ 2.3 $ 2.3
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.24.3
Intangible Assets, Net - Expected Amortization Expense in Future Periods (Details) - USD ($)
$ in Thousands
Sep. 30, 2024
Dec. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]    
2024 (remaining three months) $ 640  
2025 2,556  
2026 2,477  
2027 1,738  
Total intangibles $ 7,411 $ 9,675
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.24.3
Leases - Narrative (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Leases [Abstract]        
Lease expense $ 4.5 $ 3.9 $ 12.1 $ 12.1
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.24.3
Leases - Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Leases [Abstract]    
Cash payments included in the measurement of lease liabilities $ 10,665 $ 11,350
Lease liabilities arising from obtaining right-of-use assets $ 28,157 $ 121
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.24.3
Leases- Weighted Average Remaining Lease Term and Weighted Average Discount Rate (Details)
Sep. 30, 2024
Dec. 31, 2023
Leases [Abstract]    
Weighted average remaining lease term (years) 4 years 4 months 24 days 3 years 1 month 6 days
Weighted average discount rate 7.40% 5.20%
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.24.3
Leases - Minimum Annual Lease Payments (Details)
$ in Thousands
Sep. 30, 2024
USD ($)
Leases [Abstract]  
2024 (remaining three months) $ 2,865
2025 12,593
2026 12,194
2027 12,249
2028 9,473
2029 and thereafter 7,377
Total minimum lease payments 56,751
Less: interest (9,152)
Present value of net minimum lease payments $ 47,599
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation - Narrative (Details) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Jun. 12, 2024
Jun. 08, 2022
Jun. 09, 2021
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Shares available for grant (in shares)       2,562   2,562  
Vesting period (in years)           4 years  
Stock-based compensation       $ 20,337 $ 18,522 $ 56,454 $ 50,560
Shares repurchased and retired (in shares)           681 1,203
Shares repurchased and retired           $ 98,000 $ 147,700
Authorized repurchase amount remaining       185,700   185,700  
Stock options              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Stock-based compensation expenses, unrecognized       21,600   $ 21,600  
Stock-based compensation, recognition period (in years)           2 years 4 months 24 days  
Restricted stock units              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Stock-based compensation expenses, unrecognized       80,200   $ 80,200  
Stock-based compensation, recognition period (in years)           2 years 7 months 6 days  
Performance-based Restricted Stock Units              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Stock-based compensation       3,900 $ 2,700 $ 8,000 $ 5,200
Stock-based compensation expenses, unrecognized       3,900   $ 3,900  
Stock-based compensation, recognition period (in years)           3 months 18 days  
Performance-based Restricted Stock Units | Executive Officer              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Vesting period (in years)           3 years  
Shares that will vest upon trigger (in percentage)           100.00%  
ESPP Shares              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Stock-based compensation expenses, unrecognized       $ 1,000   $ 1,000  
Stock-based compensation, recognition period (in years)           4 months 24 days  
Minimum | Performance-based Restricted Stock Units | Executive Officer              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Vesting range (percentage)           0.00%  
Maximum | Performance-based Restricted Stock Units | Executive Officer              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Vesting range (percentage)           200.00%  
The 2012 Equity Incentive Plan              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Share-based compensation, additional shares available (in shares) 1,092 3,072          
Vesting period (in years)           4 years  
Expiration period           10 years  
The 2021 Employee Stock Purchase Plan              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
Shares available for grant (in shares)       435   435  
Shares authorized for issuance (in shares)     600        
Offering period (in months)     6 months        
Purchase price of stock, percentage     85.00%        
Issuance of common stock through employee stock purchase plan (in shares)           59  
The 2021 Employee Stock Purchase Plan | Minimum              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
ESPP eligible percent to contribute     1.00%        
The 2021 Employee Stock Purchase Plan | Maximum              
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]              
ESPP eligible percent to contribute     15.00%        
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation - Share-based Compensation and Stock Options Activity (Details)
$ / shares in Units, shares in Thousands, $ in Thousands
9 Months Ended 12 Months Ended
Sep. 30, 2024
USD ($)
$ / shares
shares
Dec. 31, 2023
USD ($)
$ / shares
shares
Outstanding Options    
Beginning balance (in shares) | shares 1,447  
Granted (in shares) | shares 194  
Exercised (in shares) | shares (161)  
Canceled (in shares) | shares (72)  
Ending balance (in shares) | shares 1,408 1,447
Vested and expected to vest (in shares) | shares 1,268  
Outstanding options, exercisable (in shares) | shares 809  
Weighted Average Exercise Price    
Beginning balance (in USD per share) | $ / shares $ 97.98  
Granted (in USD per share) | $ / shares 161.93  
Exercised (in USD per share) | $ / shares 51.48  
Canceled (in USD per share) | $ / shares 130.47  
Ending balance (in USD per share) | $ / shares 110.47 $ 97.98
Vested and expected to vest (in USD per share) | $ / shares 106.81  
Weighted average exercise price, exercisable (in USD per share) | $ / shares $ 88.39  
Weighted Average Remaining Contractual Life    
Balance 6 years 6 months 6 years 6 months
Vested and expected to vest as of September 30, 2024 6 years 3 months 18 days  
Exercisable as of September 30, 2024 5 years  
Aggregate Intrinsic Value    
Balance | $ $ 35,988 $ 142,302
Vested and expected to vest as of September 30, 2024 | $ 35,653  
Exercisable as of September 30, 2024 | $ $ 34,100  
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation - Summary of Restricted Stock Unit Activity (Details) - $ / shares
shares in Thousands
9 Months Ended 12 Months Ended
Sep. 30, 2024
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Restricted stock units        
Outstanding RSUs        
Beginning balance (in shares) 1,074      
Granted (in shares) 410      
Vested (in shares) (332)      
Forfeited (in shares) (178)      
Ending balance (in shares) 974 1,074    
Outstanding and expected to vest (in shares) 733      
Weighted Average Grant Date Fair Value Per Share        
Beginning balance (in USD per share) $ 133.60      
Granted (in USD per share) 159.26      
Vested (in USD per share) 127.84      
Forfeited (in USD per share) 139.68      
Ending balance (in USD per share) 145.25 $ 133.60    
Outstanding and expected to vest (in USD per share) $ 142.66      
Performance-based Restricted Stock Units | Executive Officer 1        
Outstanding RSUs        
Granted (in shares)   139 139 139
Performance-based Restricted Stock Units | Executive Officer        
Outstanding RSUs        
Granted (in shares) 156      
Performance-based Restricted Stock Units | Executive Officer 2        
Outstanding RSUs        
Granted (in shares)   64 64 64
Performance-based Restricted Stock Units | Executive Officer 3        
Outstanding RSUs        
Granted (in shares)   70 70 70
Performance-based Restricted Stock Units | Executive Officer 4        
Outstanding RSUs        
Granted (in shares) 161 161 161 161
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation - Summary of Stock-based Compensation Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation $ 20,337 $ 18,522 $ 56,454 $ 50,560
Cost of revenues        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation 2,081 1,946 5,967 5,255
Research and development        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation 5,448 5,671 15,911 15,734
Sales and marketing        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation 3,649 3,229 11,020 8,580
General and administrative        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation $ 9,159 $ 7,676 $ 23,556 $ 20,991
XML 69 R58.htm IDEA: XBRL DOCUMENT v3.24.3
Stockholders' Equity and Stock-based Compensation - Schedule of Repurchase Agreements (Details) - USD ($)
$ in Millions
Sep. 30, 2024
Feb. 07, 2024
Feb. 09, 2023
May 04, 2022
Nov. 03, 2021
Feb. 10, 2021
May 07, 2020
Oct. 30, 2019
Oct. 30, 2018
Feb. 12, 2018
Authorized Dollar Value                    
Stock repurchase program, authorized amount $ 1,200.0                 $ 100.0
Additional authorized amount   $ 200.0 $ 100.0 $ 200.0 $ 200.0 $ 100.0 $ 100.0 $ 100.0 $ 100.0  
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.24.3
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Income Tax Disclosure [Abstract]          
Income tax provision $ 6,111 $ 1,508 $ 26,277 $ 20,057  
Income tax rate, percentage 11.70% 3.10% 16.80% 15.30%  
Unrecognized tax benefits $ 14,300   $ 14,300   $ 11,900
Unrecognized tax benefits effecting the tax rate $ 7,800   $ 7,800   $ 6,100
XML 71 R60.htm IDEA: XBRL DOCUMENT v3.24.3
Segment and Geographic Area Information - Narrative (Details)
9 Months Ended
Sep. 30, 2024
segment
Segment Reporting [Abstract]  
Number of operating segments 1
Number of reportable segments 1
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.24.3
Segment and Geographic Area Information - Revenue and Property and Equipment, Net by Geographic Area (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Dec. 31, 2023
Revenues from External Customers and Long-Lived Assets [Line Items]          
Revenues $ 153,867 $ 141,996 $ 448,380 $ 409,888  
Total Long-lived Assets 68,637   68,637   $ 54,990
United States          
Revenues from External Customers and Long-Lived Assets [Line Items]          
Revenues 89,238 85,377 262,614 246,348  
Total Long-lived Assets 47,643   47,643   42,622
Foreign          
Revenues from External Customers and Long-Lived Assets [Line Items]          
Revenues 64,629 $ 56,619 185,766 $ 163,540  
India          
Revenues from External Customers and Long-Lived Assets [Line Items]          
Total Long-lived Assets 19,404   19,404   9,952
Rest of world          
Revenues from External Customers and Long-Lived Assets [Line Items]          
Total Long-lived Assets $ 1,590   $ 1,590   $ 2,416
XML 73 R62.htm IDEA: XBRL DOCUMENT v3.24.3
Net Income Per Share - Basic and Diluted Net Income Per Share (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2024
Sep. 30, 2023
Numerator:                
Net income $ 46,212 $ 43,772 $ 39,731 $ 46,515 $ 35,382 $ 29,105 $ 129,715 $ 111,002
Denominator:                
Basic weighted average shares (in shares) 36,762     36,766     36,877 36,891
Stock options (in shares) 279     465     372 471
Retired stock units (in shares) 91     212     188 151
Employee stock purchase plan (in shares) 4     5     4 3
Diluted weighted average shares (in shares) 37,136     37,448     37,441 37,516
Net income per share:                
Basic (in USD per share) $ 1.26     $ 1.27     $ 3.52 $ 3.01
Diluted (in USD per share) $ 1.24     $ 1.24     $ 3.46 $ 2.96
XML 74 R63.htm IDEA: XBRL DOCUMENT v3.24.3
Net Income Per Share - Anti-dilutive Net Income Per Share (Details) - shares
shares in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total anti-dilutive shares (in shares) 1,165 777 704 1,120
Stock options        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total anti-dilutive shares (in shares) 854 762 585 925
Restricted stock units        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total anti-dilutive shares (in shares) 311 1 119 186
Employee stock purchase plan        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total anti-dilutive shares (in shares) 0 14 0 9
EXCEL 75 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( *B(95D'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 " "HB&59JSDG.>\ K @ $0 &1O8U!R;W!S+V-O&ULS9+! M3L,P#(9?!>7>NLT8AZC+98@32$A, G&+'&^+:-HH,6KW]J1EZX3@ 9!RB?WG M\V*["C=C+[MDL*P$4?FH 2'LF;5.9$EYO[/GK#^1H/$ Q^ MF .!K*H[\,3&&C8P 8NP$(5N+"J,9+B/9[S%!1\^8SO#+ *UY*GC!'59@]#3 MQ' :VP:N@ G&%'WZ+I!=B'/U3^S< 7%.CLDMJ6$8RF$UY_(.-;P]/;[,ZQ:N M2VPZI/PJ.<6G0!MQF?RZVM[O'H26E;PMZKJHUCLI5;7.YWUR_>%W%?:]=7OW MCXTO@KJ!7_]"?P%02P,$% @ J(AE69E&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" "HB&59A="M3]P% #5'@ & 'AL+W=OM2U7EB'Y M]SVRP75])XR\77=,V81"]1&*<7G;64R7F_GWIK%M&T MQQ,6PYLE%Q&5<"M6_301C/IY4!3VB64-^Q$-XLYDG#^;B[U7O\GA 69!4^;R\(_ E^N+SED'^6Q)LU ^\NU'M@,:*#V/AVG^ M%VV+;QVG@[PLE3S:!4,)HB N_M.7746\#< U 6070-X%X+I?L'A+&6!R+Y E\0H.&=)#]G6"2(6<33E M<YO70T5"HY>0?7#\S2A'KOH M0$=+F=BPSN2G'_#0^E6']YW$OH%U2EC'I#ZYXEX&752BI]>$Z4C-X=CJ/NB0 MC%$MD08ETN PI(>,"LE$^(H>6<*%U.&9I:3(=)7B&J-:X@U+O.%A>#,F NZK M7HA@'- FSZQ4]KO:CF>,;\EY6G*>'M@R!84I))\!ZO-HUEK2,-4FTAC6$O"L M!#PS%NHZEH%\13=!R-!]%BV8T(&9-2P+=^W!<$AT<,;0EG"C$FYT"-PC6P5J M&(4TWM-(VT;-.@]?IG?/\Q-T>^_V=(S&Z):,V*IF4NL0RMO8XP):)E6-] 3- M)71'Q 5R>19+\0K_?2UZ@_K5M8[8'-06^8UYP(<@/]$7=.M#]PR6@9=S&]IP M@^3I:=<:V YV!EI>8W!;7E+QDD-XI[X/ZNG)_@+=P7?HPNR_K$FS7=J1;T&&8)5VX) MFSW.>] 9I(6&Z,\@J1^WS(HCQ[&T=L(P2;CR2=AL;NZX!_F:K7EL\A$-(F=@)(;8TO,=PR7ARB9AL\=Y"B2,D7R) M,/EY\0N:,R\3^C'CLD')Y5$$$Q6LL+VO)^A'JP?V"254H T-,X82&(WR1;&V M$H[AIG!EI[#9!X$)]H-XA>:OT8*'6O8&(P4V2LMU# =%*@=%S!YGGTUT_>*M M:;QBM3ZQ0>A^.K^::M>BYL"VA)5A(@<9)C<30JUFBB5,GDJ843+M_DN#XK-V MU\8U1[7EK(P2.<@HW<8PJ1<[=6I92O?@6DZS8AWG,5P0J5P0.<@%J64;F!

)WJVZU9 MIW85;HYKRU@Q#!"I#! Q^Y=] M(M<,$FG",\O4XQW#")'*"!&SA]F/M,4L/R]F^7F^RXT^9Q)L;:SF4"WQ=[(X MNWHHU :YFCI5V4SLX6!D.0,R[F]TC)49(@=M&KDPH@IP?;>QSU[0;TR?QJ:] M(PMCZ_3,L;4,Q_ [I/([Q&Q7]M/E39 J=_O,P*69=CH;Y+I=3+HVUH(>PP#9 ME0&R&S9Y]MN<;TEOX*%VA&T0J]O'-8>U9:PLD&TV+.\9=SO7]91FN0=M@S4' MM66L[(]M-BM3 /0+R)!JQY@&@=I1U1SW?\'Z;PX.U827GZ>FR%-;E<498OFT M/+.=YB>5_>KSXL#W$U7S98I"MH10JW<* YXHSE"+&\F3_!ARP:7D47ZY9M1G M0GT [Y>DG&2_?D?9L6R1HI.N\X=$+\?3<\>[>X[D^;V0 M=VK!N48/==6HB\E"Z^79=*KR!:^9.A5+WL";N9 UTW K;Z=J*3DKND%U-25! M$$]K5C:3V7GW[$K.SD6KJ[+A5Q*IMJZ9?'S/*W%_,<&3IP=?RMN%-@^FL_,E MN^777'];7DFXFVZU%&7-&U6*!DD^OYB\PV>7-#8#.HF_2GZO=JZ1,>5&B#MS M\[&XF 0&$:]XKHT*!O]6_))7E=$$.+YOE$ZVWS0#=Z^?M/_:&0_&W##%+T7U M=UGHQ<4DG:""SUE;Z2_B_G>^,2@R^G)1J>XONM_(!A.4MTJ+>C,8$-1EL_[/ M'C:.V!F PY$!9#. /'< W0R@G:%K9)U9'YAFLW,I[I$TTJ#-7'2^Z4:#-65C MIO%:2WA;PC@]NQ1- 9/""P172E1EP33M('0K,%EVII8LYQ<32"/% MY8I/9J]^P7'PUF7=3U*V9RO=VDI]VF>73"T0S!K*S07_WI8K5H'QSEEK77L<8@&-XV@KMHP: LL\@*[7@BI3S27->2@O..:W50<*9ZWLM0E=WHR#8"_A=GHL6IA@J;LYAO@'N,6J '<0)?E<'.$CW$4 M=N%QE"0I)(1Y"MFJ>7W#Y3H(G_*V$X-4W'VUR0CGB(T2&6P2]U@\RV(#,OR#]$ M<_O"Y,CL64[C.!WFLBT6Q7$XXE,<]-P7'(@&:(>D?NRBP!3$)30HNDL0)[,% M]M0F-!QFLD.,$O#O"-H=IL9>M)\!*]-EP=U3+/:R&G#VG$/<%DBSATWHCKN86!B2)+%HQR$6DR0> M@]HS)/93Y,=&L^:V-'%[""BU@881'N*TI;($C[ C[ND1^_GQ-R&*^[*JG,!L MWDO"<%@ #DGM ^OI$?OY\9-HGFJ4/,SAV$&-)+#F^H#4/M2>&+&?&3]W1;_I M 8\756QS$2%1;$VV@[*R-!YA<-Q3%O9SUKKV>^#9C),%*2567;+E4DQB/%+U M<<]-.'U6$UV5[*:LNEKO[*2QE^->VDK_+&W[1O=] MA80,Y\66RM*122$]MQ$_MP$^V4+R[4R*<1/^=Y8^( BA37%AE"8D'6)TR'6_$90]%1+_ M.NU2U'6IS2IBO;3,16-"@SE']\::EV!?O+/VD[3M;ZWU=$L/+26?RI8R M7CA#1\%I$&#H#B1:L:KE;Q$)CH,@0&K!I-EX:/5"R/(?7I@J\?2T5,J0=KP<;YXPYB,;'<1AT MAL)E%F3_D[\.[UY11VLQ7%SY9?;]U[<>U-]ZO"N*TAQ\0!$T.U@G90/KJF4) M1=$)T[% #DE(HR%46R[*DHR,L"+=V6OV]QS0?K9U6W6'"9O]-5%#YBW,"= * M6%(H][ZSW5:I^$(C8NO(P;G:=<@Y5[O3G;,S<=B.T%G5WN> ,P!L!>#\70/*;&W-"MSV1G?T+4$L#!!0 ( *B(95EQ M!Z[R.0, !D+ 8 >&PO=V]R:W-H965T&ULK9;=;N,V M$(5?A5 710*D$>5_I[: Q,&BO2A@K+OM1=$+6AI;1"A2)2E[VZ?OD%)4*5'L M..B-38ISCKX9C2@NCDH_F0S DF^YD&899-86=V%HD@QR9FY5 1)7=DKGS.)4 M[T-3:&"I%^4B'% Z"7/&91 O_+6UCA>JM()+6&MBRCQG^N\'$.JX#*+@^<(7 MOL^LNQ#&BX+M80/V:['6. L;EY3G( U7DFC8+8/[Z&X5>8&/^(W#T;3&Q*6R M5>K)37Y.EP%U1" @L]3O[=[2.U.P!)8!OH8&] &"^/OOH@G]L2_Q_\FL4X9A M4X;A*??X/DE4*;$;-"3 #VPKX(9(\%5A O<#US%]%:AL)][6;2N'.(K&^%P/ M[!TVGLR:F SQJ@$X(X#6V,[X&B5/-Z1@FAR8*(%<88.Z%BY 5RU\ MW0=>V4];3/26TN@%^;FH#ONX81]?QEZ_:*RTF=+\'UQP.517>^$K_W$+"[=V M2E_ GXOJP$\:^,F'X+DQY7GPR2NDE]"G(CK TP9X^B%@_.X9BWL8E_MSU-.S MU*\+>XT? MMLXM[M#X"]-[+@T1L$,=O9VB@:[.8=7$JL(?9;;*XL'(#S,\NX)V ;B^4\H^ M3]SIJ#D-Q_\"4$L#!!0 ( *B(95D\FN0;0@8 ((> 8 >&PO=V]R M:W-H965T&ULK5G;,8F> M#UDN;B=[*8\WLYE8[]DA$5-^9+GZSY87AT2JUV(W$\>")9O*Z)#-B./XLT.2 MYI/%O/KVJ5C,^4EF:D^.N.9?SI=H(GUP^?T]U>EA]FB_DQV;$' M)K\>/Q7J;=9XV:0'EHN4YZA@V]O)>WRS(EYI4"%^3=F3Z#RCDLHCY]_*E_O- M[<0I>\0RMI:EBT3]G-F295GI2?7CS]KII&FS-.P^7[W_6)%79!X3P98\^RW= MR/WM))R@#=LFITQ^YD\_LYI0U<$UST3U%SW56&>"UB;5!1GUVX5P,7)S)9S O^A(H2 MK;R5#]7H5]9JO-*\3)0'6:C_ILI.+I8\WZBPLPU23X)GZ2:1ZN5!JA^5#U(@ MOD4?CZQ(RK@*] Y]?8C1ZU=OD-@G!1,HS=&7/3^))-^(M^A5[WT^DZJ+94.S M==V=NTMWR$!W*/K <[D7:*6ZM0'L8[M]9+&?J:%IQH=.6!T^L.,44>G!?8HZ$?S&?G[L ",!='D=^'Q2;,=4,:.GW8 M"H Y41B&#:Q'TVMH>E::2RYD68@*"]V+!Z_3,@E#2C2V ,H/:*21-5$A<5U/ MXPJ@'.IY,%6_H>I;J?Y4<"'0L>#;5$(T?:-13#S5K,83@&&/>%KP8Q-&?2_2 MO:T &(D\2F&J04,UL):3>EG)=X@]'\M%2-Q C(,QR\B8SN(QG:U&"D<(S+/(P5K^ :@@"+79&)NH4$T@O:9 M**?38H]RU%".K)0?DDRIEY*O$LC?6)F&$-L(R'P_U(KCTD21( RU,8E-5.02 M5V=KHH(HZ(Q)CRUV6IWGV.L*R]5LRRK&R48IR;1KB3-'WJ'8F+K=2_<*F(8 S@FBH0*+24N=6*G7BFU;\,-U )2*!XD3<_#=R#,B#L"H M%WDZ<1.&J2H 5"<.X(@J:D/IWBI5;)>J'^6>%6HS4M%_74?\S5N4,PDN,GA4 ML3JJMWA4;ZNQO/4#TPI6;%>L][EDRJ^L8P/&PC62P@]\(Q--E(>I+EL!%(Z\ M2"^Z$ Q3=ZCTM+H5VX6K)0U!YJ:D]!U=V@&@=X$3ZL0!%*9Z(5N!L# <*CRM MBL5V&5O7W []8=*FN@RH'^FL393K$H,UH'M#XD0Z:Q,6N5XT0+K5L]@JTJ[5 M]I%M><&N49?)\\!2$Y@)3"BA.G$3YH:.#HL!&/;46FPL-0".8F>0?"LAL5U# MWC=TR]W+.2V/$D':IISS,3866!.%/3/) 9GI*Z&I$P=IR!4D9: 4DI98M>SOU4W'HIWNQ^^G\NA>#86:E\=3M;O) M7SQ/1Y6\HWJ+1_6V&LM;/W:MY"5VR=O.TTO0X$PU%2A5JE=?+09@NNP%8:&Q M,,*P:&B2MK*7V&5O=Y+:.)OBDP:&AE^",-?5Q< 3%>\(,S#^@R==>[4#JS8 M59>90LVS4RXO-R;-U^;"]'UU3:A]O\,W2PQ\C_'-ZG(=VKJ_W,Y^2(I=F@N4 ML:UJRID&JJ_%Y<+S\B+YL;K1>^12\D/UN&?)AA4E0/U_R[F\OI0---?.B[\! M4$L#!!0 ( *B(95FH^=R;K0, +D- 8 >&PO=V]R:W-H965T&ULK5==D]HV%/TK&C?3R!([ME2;("2IGQD@A8 MC:T'>C\?:GP%^#V#O3QZ)SJ2)>??].!#,K8<[1#D$"O-P/"Q@RGDN29"-_YN M.*UV26UX_'Y@?U_%CK$LF80IS__($I6.K8%%$EBQ;:Z^\/VOT,03:+Z8Y[+Z M)?L&ZU@DWDK%B\88/2BRLGZRYR8/1P;(8S9P&P.W:^"?,? : ^^U*_B-@?_: M%8+&H K=KF.O$C=CBDU&@N^)T&ADTR]5]BMKS%=6:ITLE,"O&=JIR927"58= M$H)ODN=9PA0.%@H?* +DE7Q$==Q?8,_T]>;>Z9P?FSU^?]>_2097JL0K^+SSO$=I'!6 M"7\^+*42N.7_,M6^9O?-[/IO\%YN6 QC"XDEB!U8DY]_HJ'SBRGQUR2;79-L M?B6RDQ+Y;8G\2^R33WB>9%4M3 6H;*&OL6? PP=9@ MQ[*<+7.XQ2[G5K(<\&!?*B(AWHI,92!?*F/M07"D+M<-PHZ>^R#/&W;4W,?0 MT!UTM&P 18,S2H[:+$4_DJ5*S2!O=+IB)E.RPG:.I)"L7TY.U'/WUG6Z&W3: M1P74Z63'Q$2C3G8,H.CW$^RC7K0 L:XN 1*KN2U5W72TL^T]XZ%JKSOSC_1^2@WS,[R7U->([_3U MI>8C$VN]?7)8X5+.782U$?5%H1XHOJDZX257V%=7KRG>K4!H 'Y?<:X. [U M>UN;_ =02P,$% @ J(AE69)GI9O=!@ 0AP !@ !X;"]W;W)K'QYU?B?55[WCW*#[LJCTQ6)G M3'VV6NELQTNFW\B:5_#+5JJ2&;A5MRM=*\[R9E%9K$@0Q*N2B6JQ.6^>7:G- MN=R;0E3\2B&]+TNF'M[Q0MY=+/#B\<%G<;LS]L%J2 MBY)76L@**;Z]6+S%9Y>4V@6-Q#^"W^FC:V1-N9'RJ[WY,[]8!!81+WAFK H& M_P[\DA>%U00XOG5*%_T[[<+CZT?M'QKCP9@;IOFE+/X5N=E=+-8+E/,MVQ?F ML[S[@W<&159?)@O=_$5WG6RP0-E>&UEVBP%!*:KV/[OO''&T /3X%Y!N 1DO M""<6T&Y!X[E5BZPQZSTS;'.NY!U25AJTV8O&-\UJL$94-HS71L&O M:9S:6L M<@@*SQ%<:5F(G!FXN3;P#Z)E-));=,GT#GV B&NT1%^NWZ-?7OV*7B%1H;]W MOSE0$T5NLWB :O$0E(Z,%S^?3E= 8.[3U+&WUTRK/6:5MP&MHJ62(H/,6,J&[;S!5& M<'WF\UJK-?1KM55]IFN6\8L%E*WFZL 7FY]_PG'PF\_D%U)VXH"P=T XIWWS M"9J0J#)9[ 1:U$.+9F/S-O\/ M2JO-;R.A'66RRD3!4=5CML_M76;#6"MY$)"EZ.;AZ8&,7C*0+Z3LQ%MQ[ZUX M-I#O.2C-!&O[;I4C5DIEQ/?V ;^O;0/Q>:!5&QT'+PQQ, JQ*T4P#@-_A),> MVJL3!$&(\PNG*$#J! M-N1-^%\W10(< 3FQM^64L5H85HCOXY[>@D]=:'$8A2,#/%)!%$\X&P<#UP6S M1KS-(!&:I 7 N="9A6S][_5]8YJ7UP('WC(B=)PO/C$:3;4N?,38^ ?EN.4* M$KIO5.S>GRB=GA, .*+)V-M>.1S%> (I&9"2>0KJ6:[M1..J:4(.0)[:/ M%(+=B&*Z@W;J7ZB%OI2V4V<,VP$\2[8V^=H*@5[*Q<$FF]=FZ@2#!NMP/8Z9 M*X;7F"83(1LX&\^3]I7B-1/Y8U=OXR3-CJLN<%[,H9M :1J,VY)/+%P'X03F M@MJ5.QKM 2AV0] 7#@3SQ/H+;O[/E)OA_Y%9H_M!P% MFY%C :\1+E4N,8T<,URQ-<%3U3PP*IZGU+[O*'[@U7X"HLN2RS ('(@>,B4D MG/+TP*=XGE _/77'YL7N\B9.8YJ0,7A7CN @B>,)] /'XO0Y(X.H#EP_9:>) M9[G[V7WRA;2=#G$#29-YDK[:JVS';.L!DG[RIHCXR#:(TF@'"9G:69"!K\DL!9ZZ'BH(ZL8\ M-!;Q;WM1VWG)BYNX+HW#-!G#]H@E))[8F)*!6,D\L?8UO]?-ILA;-U[<+HMJ!B,H3^N=S++X<^M]Y?2=NJ$@;W)/'M_ MYG67=C;K8$=;PH9*K.EZ8IM$!OXF/QB)V4-[XF$GXF9H M "8OFN.^[JQ#[YBR30IW.K*OLWG//CWDC(,X2L?E[14D:Q)/<" =6)S.LWAW:JFXS0F ;NUX MW5IC2^$ )%]UXRMT0Z-$9@-A?_<:Y%(U#4@\/N7TB4&H)GH5'0B=SA/ZY9/! M(V;0#;\5566C9.F?*R&]1SC4Y7$2Q-0URI7#21SB"=JD1P?K\X3_/*NX';1F M[:'.&3.A<4S'E>*3PS >CAOSZNAK3,G5;?.12J-F1FV_9O1/^P]A;YO//Z/G M[_#99?LY:U#3?EW[R!2$2J.";T%E\"8!)ZOV@U5[8V3=?/.YD<;(LKG<<99S M907@]ZV4YO'&OJ#_;+CY'U!+ P04 " "HB&59J8XJD041 "[O & M 'AL+W=OEEU M_)*A&%VM:SFJXOKU]O?O5M?OVX>NL5\5;];!^W##^_O>LVO[BZ?GU?W=8?ZN[G^W?K_M/5L\ILOJQ7[;Q9 M!>OZXYN+[Z/O5!2%FR.V1?X]KS^W>S\'F^_R2]/\NOGP=O;F(MQ4J5[4TVZC M4?7_?:IOZL5B(]57Y+>=ZL5ST,V!^S\_J:OMM^^_S2]56]\TB__,9]W=FXOB M(IC5'ZN'1?>^^?RW>O>-THW>M%FTVW^#S[NRX44P?6B[9KD[N*_! &'M O#L@M@X0^8$#DMT!B75 DATX(-T=D-H1#GWI;'= MMFW[Q\;:MO2DZJKKU^OF<[#>E.[5-C]L[=H>W3?P?+4YM3YTZ_ZO\_ZX[OJF M6!?U/;;.8SZJN__"AZ__KSZ"N#9J/_:=F^NM=LYC5Z_8O@?SM8=[] M'EP&/W^8!%]_]2IH[ZIUW0;S5?#37?/05JM9^TWPE?'Y]5775W83\FJZJ]@/ MCQ43!RKV4]-5"^*P&_ZPFV:Y[$_8;8V)HR?\T=_/9O/-"5\M@G?5?';Y=A7< M5/=SNB9R0&LZ?5@^++;-^:_NKE[W+;SLN__=IE]^JH.WJVFSK(.O_]&T[2M" M7HV7G]0?Y]-Y9XI<]6?"\^D@GD\'L55-#JC^4-_.5ZOYZK;OKHMJ->WKU]OX M:/"KH.KZ4--O@SCZ)A"A$)2KK/[F0OE=>U]-ZS<7?5.T]?I3?7']YS]%6?A7 MRNM'L70KMKE(?KJ.\SCKXW[:]Q094B+%%$C,L#)^MC+VM'*,?8^:V5Z+BZ*, M1&DV^8U;+,XM5]PB:222(C.+2;?8950FEI@B2@D1)7OEC#9*GMLHV1X8'VBC MO@_V]^.V/\O[AMG^]&ISV2*O=_]]WRP607\[^URM9_^CVBY!GOI(L0E23"+% M%$C,<#]]=C]E>\@_^Y';?'L5IMQ,G6N/**,PM3H"&\'7)J281(JIH<8PVC][ M;O^,;?_'N^+4N"O.=W?%Q>:N^$VPZBWJ!R!=]86R*"-N#];UY8:M@J]!2#$Y MHO8*%-"P)W^V)V?M>=NV#]O[1F_ ]'%8U6XNC,'#??]C_:5>3^?M]J^/OV[N M-T.G=G_$0)G&!O6]2N9.&V:1=1]"QI-(,042,\PMGLTMSF$N96CA7AMB45C= MD*V-;S<<$U$B(RJ0F&%5^6Q5R5KUOKY_6$_OJM8U:Z"KL;J^7:UT&OTR+1*K MLR$C2J28 HD9#D:AGF6'1WI(SHQ#MZVS/(RMB<\-']2W5U%1\S"R+);0H(K\ MJF$8%?30(MKC&M$)%[A/==MMID;]'_M*=NOY=#./WA58S;O!NQ@?W;=O[=3V M6R$*K0O:!!I20M442LTT6U.+B,<6/U5?ZK9W\A&'=,UVW+AU+VCKKEML4=;& M[/IQ+E=MYG##'D-91N3"C,LDMCV&L@RHFD*IF1YKG!'Q/.,XCTE?8^)6YD[M M^/IX7UU'!970H JE9EJFZ4K$3M\/7X.[NW7S<'L7U,O[1?-[7>]^_7R/O%]4 MJ\'>"<4M.S5SAFMW3BA&@:HIE)KIM"8I$8]23G*:=)F\W"S-S;8@IEZUU6:B1UKB HN^'G%L>P(E+N."2FA0 MA5(S3='<)>+!BUS-F!68'ZOU,\*/29^@A"5R$4N"&<"6 ROPQ!:J8CRR%Z((@J<>QRU!"A<)D&N0NW+L MR4]HD:N01#EJ&9(JQJU#"HTK1/2"*Y$"2B>@:A.HFH2J*92:>1+L)5_P&(-? MD!0N0(BB* SMFP(?Q-LN;'8%-KWB'$1":"(A>")Q\OJE<)E %!:A[2>40T#5 M)%1-H=1,/S6N$#RNX,?='^K[_KX5'AZT\>K>%UT72,197F;V#0[*)*!J"J5F MVJF9A."9A#ON'K;0)0"Q$&64VUTR'3'T<+72K @=GD"4NRPR9^1!E!))$B?1 M@9&'1@""1P"#P^[!V0H?P/O$)_(BB DG-*B$JBF4FNFHY@>"YP?DL'O817>B M3\XY=^7X<]_5(N><1#EJSDD5X^:<0L_-1?&2PVYDSL$-5&T"59-0-852,T\" M#1X$#QX&AMT$!DCCPND6R(G[!*HFH6IJL$',=&5-"V*>%IP\G(ZI27QB+^OQ MM? U"JHF1WT#A8II^J1117Q*9L71>8%\5-^+9TQE5-BI@="0$JJF4&JFR1I% MQ#R* .8'QBZW2 IASW+Y^GAWRS$Q)32F0JF9CNUM]^!IQ/%I@KRP=\\C$AWB MQ)ZW0F-*J)I"J9E&:@P1\QC"+UV(<2:%,1'9B]@<@7YZ-[]RR4!#A6"1I10-852,[W6N"/F<<=Y4@7Y MH-X6NPBD/]%MCZ$ !*JF4&JFQQJ Q#P P:4*Q@1Y2.+"V0Z)S%>8C LJH4$5 M2LVT3(.8F$^2\$E$BMT4A+X>[H@2RD_&!970H JE9IJBP4C,@Q%^0>3O#RN> MIO/JWA=% CMDN3NPA)(3J)I"J9E[G35@27C XBZ(#%J8$+D8>;Z_/>/1G&1$ M+@:AE<9)&-E=B"AWZ;)C1143:1I',3T<3#3@2%XR%R.!<@VHV@2J)J%J"J5F MG@0:@"2GY&(D!%_(TLAFC7P,;[>@J1A0-378(*8-FFHD9\ZQ2%P<423V^(VO MA+=/4+8QY@LH5$C3I;W':/#(XDQ(F(_J?>ET\8&([3T>T) 2JJ90:J;)FI(D MIU 2+R2<$#LM(A';SV[@*^3=+4<%E="@"J5F>J9I1\+3CN.A,"_LW?<(HB%R M.Z<#&E-"U11*S312(XV$1QI^4#@A"$)4%(BMV$$7WWOQJ:" MIFER:&BO,4-RRF,O3B:]?'3O3N,B!QOK3Z 1)51-H=1,KS6]2'AZ<1[2RP?U MMIAXJH8[)H$B#:B:0JF9#_#22"/ED0:.]*8$3DC3T'KZQ0U?']\AR;B@$AI4 MH=1,RS1=28],'T%L"N=C^_;.U$TBB>T<$FA$"553*#73:8U0TB-S2([=%)X2 MSP,-G<48OE;>771,3 F-J5!JIF^:N:0\<_%9BTF)+2Q%ZLSD^(C>GHP**J%! M%4K--$4CEI1'+"=N3N'5O2^,+DJA-J= @TJHFD*IF7;N/7H4OCDE';DY)1VQ M.870(C>G$.6(S2E4*6YS2JKY17KBYI3]W<1TJT$Y1DIN3@GM$3LTJ(2J*92: MZ:@&&>D1FU.&7:2>0E%$N3,\'[$YA=!*R[P4D7WN4YM341 M4#4UV"#FDZHU:,C.O#DE) M#^K=OXBHF; WID!C*O*;YDEX8$MLIBE!]H=N3.&C>W^]M*'_$SA0^J+?'1!Y'Y@Q>L*])@=(/E)KIL:8?V4OM3,DH.M%?7NW, M;+Y"WE?7<5$E-*I"J9FF:0Z3'9DT@EBQY&-[]T_BP:'.)1@*6Z!J"J5F.JUA M2\;#%OB*949M6G'[*!3/C(HIH3$52LU\496F,SE/9WQ6+'.78T1EF-JC4CZB MKR?C@DIH4(52,TW1,";G8I!+5E"@TJHFD*IF8YJ[)'SV..X):UYY)G'RTF;N)EU$262O0?.U M\/83^UI7['M=SX$K MS;&?2TB/S*&[6'**.&2)O94,&E1"U11*S7P9LP88A>^C.08M+-Q';B1)F9;V M?90HYXPO"R*W(Q%);+^=D"AW*4IK"J:H4E$I]M\6;#:31@H%CQ2\GE5.MQJ4 M*A3CJ (TJ(2J*92:Z:BF"@5/%0:?54Z[.!(L%"/ J%%@@6B' 46J&(<6"@T M6"CB%YQ;%5#( %6;0-4D5$VAU,R30+.(@F<1_-RJ<"?V29SG3K> 9EQ U214 M30TVB&F#YAP%GYAQ\IRI<),E$OMY"#=\);Q]@A*+,5] H4*:+FD04? @XDPS M(3ZJ]Z73Y2'VM&H"C2BA:@JE9GJLZ47!TPM@.FA!;#(1H9T.RM?'NU..B2FA M,15*S71,\XF"YQ/'IX/RPMX=CWJ3J?.>(6A,"553*#732,T@"IY!^*6#%M2C M+M(P=)!^6#>EOL\H]+&QI-H"$E5$VAU$R/-?TH>?J! M2PR0EJ%]<>7KXWMQ'1=40H,JE)IIF:8P)>[A&"7QG(H\BNP, #ZBMRFC M@DIH4(52,TW15*3DJT$@ M7$*I!E1M E634#6%4C-/ LT_2IY_\$"X=/%"DHG(!L)\#&^WH+D94#4UV""F M#1IJE#S4.!D(E\3.C<1.K^ KX>T3%&V,^0(*%=)T21.+\LC]':/]+?-6P\=[#<]#BC-SXH'P_KW-118.*<;& ME%@Y!9.S+$_V+.<1R'EP\4!4?Z==-N*^V1(;5&+E%$S.LCK=LYK'(SAJ_!3) M0AB%/3\_VHY;@\,-JS$RBF8G.EJ MM,=N(OA&F"?)P9TP5$%G\8W]X]?^B:^[YQ+X)?FJYKEML?[^IJ5J\W!?J_ M?VR:[NG#5:__N5G_NHUQ_7]02P,$% @ J(AE6;^EQ WV"0 (!L !@ M !X;"]W;W)KS*V] MI9?+["29D$&J4&D@"1)_5NI"%04)@AE?&IE)IY(V#I];Z1_8=_@REUY=V.*? M.@OY2?(Z$9E:R+H(G^WZ;ZKQYR7)2VWA^7^QCFM?06-:^V#+9C/>2VWB7WG7 MQ&&PX?7DD0W39L.4[8Z*V,IW,LC38V?7PM%J2*,'=I5WPSAM*"FSX/"MQKYP M^D[YU.F*(V07XKSV6."]D"83LY@H^GRFET8O="I-$&=I:FL3M%F**UOH5"M_ M/ ZPA22.TT;O>=0[?43OD?AH3&\RE6WO'\.'SI%IZ\CY]$F!,U6-Q(O) MGIA.IH=/R'O1!>8%RWOQB+P=7HI_G\U]< #2?W8Y'.4=[I9'Q?7&5S)5)PFJ MQRNW4LGISS\=_#IY^X2UAYVUAT])_X%I_'_H%8^)^:.6Q<;OB4N3CL2SD"OQ M\T^OI]/)VPM;5M)L^.W@[9Y(UBK!_[6G_VWMDN=B+;W0)K6NLDX&E>%%D 0? M\$9:WJE"KJ7#L\%SJLJYY&"\+[5T0;DHZX/U>!87 M.FSVQ(4L-!C2:,FNY]"]SFU1;/;MVF"]K^=>9UHZ\C;DSM;+'!3)!H&VBNR! M/BD*:*0H5\2FL' MX]B@%((++4T*_VU1TQZR0P:AC)P7B(%;2J._RN8;*Z 125IL>CE.^UO^"D9K M)RZOR0(G41%U&FI@>@]!*BJR%^:$?IG?(%)E!(6L8$?:J%DX6PJU4FY?K6RQ M(F?3#;*P+T.0Z6VS(\TUU@Q=6.N00SG";V0AJA9%M%K=-9\ZM:R+J& M-Q[.@?XL F&NPEHIT[NRY<'# //W:S5'TE;:68/F&!!U4N!DI1&KS'9%%/TC M2VLN-MI+*Y$>V*:<;!XZT +!D:J4< 0P&2.\5FK[X?0L>J&-1>\7B M[H>5?%G&@O.UCI76!SE3!9HP51!TQ^K^!2T 'E<(H1+7KOZ,4(HKI([037!+ M46C[:K%0W,!AH9T'3!NHD-K$(*^H^T-/1-QC2:L@IZ;DI,XBS\O"SLGA?3@< MG)[7(;I\+^8C<2X]ZA'BKXBW38B!(TC)-(W>4WQK(^M,DY#4HJ<9'Y_@N\XX M' MM8(=&9IF".'F-C>WZA;7!H'I -Q*0GQ,XT"TJV7 .*7197P.RYU+$#\*! M2GBF#-)+N<3WJAIPWXUA V>DWX,I;D:SD?CM[.P*?(EP1R#J12\K1%X6ZX->$'3Y%J =2+S'+@0BM?((##H+:*"641G$Y] MJ;6+[-;%:80NS0;82IN&6DII,-F3ZLA2WZ%@,+331,]&RNQ/3,@-"ZY!8'GG M@S4 040#M@!DCCEPN,$@PM[3A$+09Y!(HH]65PO4W@PPB*9L[D&DQ]C/P<3Y MR#7(YF*6/A<+G'5\)[:M*BS4-FN@L%M"NP4C@E(LSV 2$F6)V'XR'5 "T MGH85BTUXJR.Y&@-6%P,N&7KM'RV!G;GVF)$*H(Q,EUREV/-G;>*!CLLTQ*KZ M"RSK,.[1@@CA^_QPOXV=13\^*TR/@9I5RVY_[^+4!@A"'A0KS"CP>6O0).%_JY88,N)+:HCWB*TI8S\H M4R*Q4MXBI@W9JLXNGL4\#N_58'J4W)8;=%&H8(@LJ2ZZ*F^ M)YBG%D;163.QA\W0"Q?H'\E! M3KO M;WC:'!N)?A*_OGG1$*D$X\BX>-*CG MCG!("S4S9XQ7RG68:1CNVDYCATZR*.Y^<9&"!Q2G#14OK7"4FGAV^ Y=8(3" M3/& 8)[1R(MEPV,E1F,\IPT*/EFC!ALN@>%OK _B7^C#K62TM4]V%>L[-F)R MXD-GUD 2!BN:[3,OSBW^8';Y<#8[QW"E'RCME]Y4C.]GR=GL!DM)Q?[D55.= MM%29G!"! *LE@V[0G"- L;.OYNW*\H.C=[N?*-]X;N0M>IM#9M;FB Y=79' MADRE# UF!P=C+WY_]Y$<:WF4N 5\T:KH=T+R A@&F@G&@%:6,=9I3(NAW+)> M0M7694!NUY&AH5#@&%'HKUCV+3WD1ZS(;BE6\N"(4+8MF'7&K#?T0K90-^W. M&TV;XV[0M#)@>JF-X8%B07< '?T?O&QGM:8DAQVP#=$"^8$P:A_?%G6XQ4"_ M^-:4GJBVO& ZF-\WO]$81X6!87]92&]EU]$6VOD@FAL1BEZOY.5(O(^4V!Y' M<7Y"$)J!.3;C@$-8U8@?7 K0TFZ\Y- 7?=RK> !3#V]+FBX.#- Q!T% -M\ M;7E=8V4:ADGF.^4X$6R5T^7@,FA0[2CCKHBQ.Q;IT:!(H<$12W $Z?ZDY]4' MY6IP7'VB9/$FETO49G-M-3CNS-M+HSXWI('.V_?8'%(KJ;,?C/2()Q(#E^=- M)N/I7E(VNA3/Z1#]';',PU?$6I1'XP+=2Z2YI[J*=[&+&L=3WI; M,"PV/Q!6UW1F&QPEC>W;8CSSME=K#Z:-(8,/#_SMM1>:/46&K\1$@NZEQ$%" M-GWB21=2+X;]M&]+4KDE_S;#LX8)\0>,[M/NYY^S M^*M'OSS^=O11.N#48^)98.MD].IE(ES\/2:^!%OQ;R!S&X(M^9$N=)6C!?B> M+E[:%U+0_2AV^E]02P,$% @ J(AE635P)D'K$0 :CH !@ !X;"]W M;W)KY.('9BR1JN6LWUFJ^L5C47Y1 M&RDK\76;Y>KE9%-5NV=W=RK>R&VDIL5.YOAE593;J,)CN;Y3NU)&"4_:9G>N M;0=WVRC-)Z]>\+L/Y:L715UE:2X_E$+5VVU4[M_(K'A\.7$FYL7'=+VIZ,7= MJQ>[:"T_R>KS[D.)I[MVE23=RERE12Y*N7HY>>T\>^/3>![PMU0^JMYW09PL MB^(+/;Q/7DYL(DAF,JYHA0@?#_)>9ADM!#)^;]:E M?*I*_)IB7O7J7926XF]15DM1K,2[-(_R.(TR\3Y755E#^I5Z<5=A(QI^%S>+ MOM&+NB<678A?BKS:*/%#GLAD./\.!+94NH;*-^[9!3_)W51XMB5U M7'N\GG>9Z[>IBK-"U:54XO]>+\$U#.6?QWC62_K'ER3G>:9V42Q?3N =2I8/ M?+1 374PKP4I1B%Z7\ X21LI41Z9"(%DE4 MR:F TXI8EA6 B=BC0??%%I/V?_Y3Z#KSYTJL6I;3CF4+#W%6)VF^;N?'D=H( M^7N=0A)Z3!3'14W[:WZC929[+W?1GMZ GX1>EC7D81A-):83-7%4EGO:)=KJ M6=%N5Q9?4T -"55"\*M6^I ]5$"BVY",LXC #&)2FZ*L()BJ+DF&FE$E@509 M6)-J*O[:,6ZDI)BP4NXP5YUA4LN;.5$RIAV8>"@(8X@ @:@ W,/S'87)0GX46"IMTG/&%@ L-QVEE3$4 K$!&EBD\HR*N,-$P[B=C4HKA74 M!4+U,K1G;VW>%0"<;M-_2^T&&$]4%TOR>I96LQ!)&9A].+3.#P +?R[+X@B%)\9AC+MM/*:7()*Q' M<3Q+!#RLL:K6%T&CX0&2+3+$;O5,_$RSA".>,FI$%>NK7>/WNJCPC4%!:46S M[K05*2WA!#I)8W@<8X(B4.@YQK39PCVQ10$Z2Q+.=^Y&"AGX8>?JP_6NH)7V MS&!Z9F.VGR$1UI%5%:PAB\K3:XZ7Z.SR)/?:$TK9-Q3>JT8\ TH"X0A1H>-5 M#42N9+EMW>R<&KP3:FCH:;==RQPF1WL,#)ND7>UW),*,C'M%J1@8RY'MD6^V M. R?9-1CYP=%]7:G=VR<[1#U=;@A;X+$2 K::607:EI;'B#@7TZ /N&52LG5 M5B=LQ8 *[4J;&5^@86XCD6GW5J^AS4LRT*PW$$*6PL,!"D4N]X:Q59TG%CPY MC3?DL0PS9I60J>#-QK2R* >2-RY;%EM0D4A4 M023$UMC(RGG$"?PC!&VEWF?CVV$#2QG4&"UT%"L2V L4MBT2@GC-#5*BR+BM MJF%H$(EDA093@73U8Y-K):DV+)8LFJ30SJTX*]) M#<9"/PAT5DLMB:3!(Q%"53) M[1*F:NJ@%FR,,_?R^1LFO*@5]E2W5(X-\4:))\*UG+F+3X9A]WG[YG[L&V: MXUM>Z)F/R_! /)JYKN=8KA^VG_=#:.CVI>^XD^/?8MJ0BO9 M825[?U3)X7RP&QY/JG?F6^Y\83Z^4;UV:,V\H/T\I=Y98/G!S'Q<4J[C66'H MF(]O4:_C\/\C!;,P/,\#@V[SS8.>OU&[CK4(@_;SO'9'8Y&_H>BA?_*N"%9M M?=OHVNK",\1N4K$8TERC(N)2L#3YCD[G:5R.RIP2"^J[4*Q*CD$&9RLPJZFX M'U9[_$N:/P G=709)DWCVE"7-L?*PWXF5?61]BB$O=X"@P6?L.",[.M&>#*MVE[_$HO%@[PJ\C7 M%]@84A@ZULSQ2;)N(&YFMR($-'JGP2*TYNX,WNZ-8L*5//G6;!:(.6" >9I9 MGFW4XH2^-5]@;2M<$%<>N H#*PCM9H .%7-OSF9#$Y^(&\^]-9'#<5D5/WSE M[+KQ(OC%$V@2N+?Q^5 E<8R5X MF$-*@U_GP.GO,'8*4S-?>!#Q_-8$K;$MN1Z4X+%C^;!VU[5"A)WK.'%\WUK8 MCB!K=VW_EE_,?1//72SF!$@]9E!Y8-/B9"??8? 4A6!"+JWD0C-X#@ JI^P= MCCW'4,<&7<&M"8Y76KOE.($ #V0!> @\HYC Y\OS-ST$0> M]@32F+&1+^Q;$TL)2MRC5NXO^E9^-._FLZ"V/;8N8EOCSK1QQ-SN M&W4?8 28H.77<\T?F<&SWOL'AHP=?^PS3\3<6L!FGS L'??T_HBQI3HVP,YF MAPLPB#X=I.D,CG"0ZVS070!!88$.9H_#:?\W8WM^B$#&R.K.B.A DS>G[_[" MLF4I_R*5,NLM7?((9PHWVVZEZ/IV\/[ILA=KC\%(P(66SIFE%K>A3 M^N7S4CKSZ9V7ZO.[WGZ-JD=J!L@<4[1I)&\CLA$1=6>#), :OZ/R;(3!=#]& M?(99K'->B1K&U\16,^Z[Z\]A-C#* X:Q_C@%RWU;G]= #L/F-67FZ5SY;2U- MW^\WL/,/&1$:.PO4,K[+WQ#OD'/2N&@%>^Z&01)%O=Z(=]0)I3<(-?/ LN)3-_]MUP]8I8H:SGNB2&MAY-Y X($A M:H_#N"?N=&:2-7VJ(E>R),M451%_X9,1:A _P!L!71N9)=J'\^:(Y3!!Z[S9 MN /=&TKA#^VI1>N,=)2A^R)-\]L<^W1'9\,EAX#0'KT?#B0G8 ?AMGN*\6FY M-2V/1S!L&K%'YO5X:C&JE1RW]U>D@%[?6M^)T-WHIMD\% -UHY1J7*U'#:T/ M)(/:'AC^J,VN5R%MQ&D9UULZS=/'G4D:ZVL"#:Y<$G[69D+MM0,>/>T;#TP2 M&0 4$)5DVEBH"P<'7"=\6^,XXR(=PWESXZ#%&3J4VM*97TEISQA,4W/4VQQ% MW0OXDFUKB8BEM]RH4T66)AR>(*1*7P2A0WGD4_K8X)@NFG.OI-LP M+W+=!JS:H]'\W&;-/0O!-[!&MRTVD3'ZYDH,QYKT@428-$=+8YM^VYV"';^0 M\U:J=)WSWEQHK8"@8B,3LI/^YI*BK=)G_E< MLZHK!!L\&.]0_BZF;S_%?-,["0<2CHQ1^I TE/Q$WT*N5I)/OK*&5IZ MSAU1,A'+79L2X(6,L+B^=<,GC%!UD8BZ@GS_32]0@])=%CTCRO:0L[H6#R M O^Y'TQ]$T@M05< O>=.V'5"6& ?U91:5EZ_0:+I/9&._^_(#;NXWY+K3X-# M.X/]1(.4\]$7PW@7@%:%$$! 1H /G]L?$N; M 1DG>2196MPXQ3D#[1_WYB@P\S]_-(]#I^W@[ H)GV*0$LV=: MA[0,$JY,%70!1UT971K4Z2'_8 Y"8K%-#> >N9/4!V<*JI< ^A)NGH)-6OV" M&,: >31544VNPK%HM:);27V-'Z7%F 6"&]V!);W1$G1;J(JHPW+\LM;U.'>1 MM4M@X;B'8#&;.MTK (5CN78/[G2&?X^(QA'W+6H^U"8WD_LG$^)D[@Q&C MXO:U-I\KCKO/.M>@"QEXUZQWZ+"T$@FKS[JS$'Y7 #MT*X(.\7_NG:W_%VAW M+9_[B8XUL]W_'O&+&8CO3DS,M8[VX+^UVZ8CI;B'UC.'WB6AWMO^Q0*DD/J MI'\M//VF\N2GXI%J3$M#C+YA3 EX24##@2)"#BJ;!IRYG=WE:(*K;%GR94RI MND/^$:JUTJ,+7,M_T;U/H&NTVV6H6ZE:;-I>S8W[08$)1LF5-" 3_D$N%:8, M\C[3EJ-$L=4=$QP)NDJ628V^.B";^_C+/2!6\E72O8%[1F_MP[N"^L7DD0:Q M$5<+6O/X!:Y.B"7]\0]?U)/54TRF&47,CH22K71=5C*^5[F7V3&); ;=NG M:W+N,G;$G+H?U"FLTBK3OS1ULO;9F.)$1=>*Q_$Y6A8//4'I#4=VJ8>JH0B( M7<2>M;3$.BO@&B,(3JNZ=^VX+ZBFRZR7T.)YI,N"^U[[BG1J4>>W[2:;TXA! M2=TC=$_Q"QD:_VD=_T4#IW%&Y1?BBB[^;G0.)7:AD/WK!%")NPD5 )THSWZ8G?\9G;<'"%K]=(:;1IA1.Z)X!G8>#R,6,_@7ZSQ?F;.M$ M^6Y6T-+%_C:?;^R/R>YZ?_^WE3!P^BO'QC'UGP*V M;]L_I'RM_WZP&Z[_"O,7^ =1E:(/VSTM?_0=02P,$% @ J(AE66"9DV1\!0 5@\ !D M !X;"]W;W)K&ULK5=M;]LV$/XKA#H4-N#&$O6> M)@8<=UTSK"](LNW#L ^T=+:$2J0GTG&V7[\[4G;LUO&'I!]$D=+QX=W#.][Q M8J.ZK[H",.RA;:2^]"IC5N?CL2XJ:(4^4RN0^&>ANE88'';+L5YU($H[J6W& MW/>3<2MJZ4TN[+1"K4U32_C2,;UN6]']>P6-VEQZ@;?]<%,O*T,?QI.+ ME5C"+9C?5U\Z'(UW*&7=@M2UDJR#Q:4W#GMBPBM4HVW+-DXVR3U6K+51;3\9-6AKZ=[BH>=A;T+F M/S&!]Q.XU=LM9+5\)XR87'1JPSJ21C3J6%/M;%2NEK0IMZ;#OS7.,Y-I4:S; M=2,,E.RSJ:!C,]7B]E;$^SVP:UFH%MC@-Z7U\&)L<$F:."YZ^"L'SY^ S]E' M)4VEV<^RA/)P_AA5W>G+M_I>\9. M[ Z8Z$_8MSGT0F\<&=_:/'"'V'_B'W" M,%$+=B<>V%_3N38=>M7?QVAQJT;'5Z5(.]HD5Q$[(-M#A-(TX#1Y&^IQ-[T7= MB'D#;Q#ZS:UH@+V#N4&08MW5ID8E9T)7[#V*LP]0DM9WRHB!Y4ZFU1G#4 M[$HT0A;X5QA$*'H%@I%;]R<6^!FV@V"4!7SH>JD?#=G,4D%,K"6>J4W]'YJP MQ+-4.YL!L4M412ZMX2OH:E6R010F0Q:,..)#9AQP:%@L\*AG/V2 D_$'HIT/K\6[#CBI"(L$H\".6 MY.D!#1]%5U1;#B*RF>>YM3WULYX#GZ8_DP/.@R&+DICQ*'H! U$0V6>/@>VO M09#%P[X]38/5):^LSVRKSA\MA/P49HGN$DC/R$M M>8+DOH &=%-Z]F@8Q!'JFO"49>EI^_F(QZ@*'_D!JL*CX("#(Q&) 3%*P\0Z MQ3KCWB2A2I M])RDL=CJ;0&1ZGUHEVH^"Y-(0!9QA(89J^A('$^J%MCS 01*%] M3C) B@RB.*6HB^+ADZ'4F\P3=YA&<;0]5(/DV22$.1VI$;7Q"WTA\X=]>_18 MB?-AWYYF S6* Y]EJ-/)@+)TY#PD$F(;55F2NM3KUM8,"^!>[SE@KMME5B,> M$!1+&F'-U8?V+CK5LNGGV35#NXW-Y)ADI<9?V-.JJ4N;NK7!5VL3/$+AC:$3 M5'/K[S/NG4W=^T4A^T0Y_."+/2.L78^];Q+N-\.;G=:%79G4L'J_<0E\00F\ M<@G\!NY!KK&#/(7N.$YY8"ET <5'.:;$F=*VUNNVX@-._AURVKO=^W9?=U=&J?NKO0H[FZ<>*8NZ5!H8(%3_;,T M]ECG;G%N8-3*WISFRN ]S'8KO/A"1P+X?Z&4V0YH@=U5>O(_4$L#!!0 ( M *B(95E4MMNG"P0 %,) 9 >&PO=V]R:W-H965TR(S&*F.R>%P@<#MFL:;G9W*/5V M'F718>.36-?.;R2+6D(HL70>@=.PP7N4T@,1C2][S.AHTBN>S@_H[X/O MY,N26[S7\E=1N7H>32*H<,4[Z3[I[0?<^S/R>*66-GQAV\L.R6+96:>;O3*M M&Z'ZD3_MXW"B,$E?46![!19X]X8"R[?<\<7,Z"T8+TUH?A)<#=I$3BB?E$=G MZ%20GEL\&,JO<3O@JH)W7SK14L1=##^BFR6.#'BQI-R#W?5@[!6P*7S4RM46 MWJD*JW/]A(@=V;$#NSMV$? 1VP'D:0PL9<,+>/G1VSS@Y?_@;0P/DBMW[C3\ M=KNTSM ]^?TEUWODX$*L@F+IZSPL_$T3E/V+&;URFVY06!%G(W&8LQ&-69RQ,1&T M]H::3MDUG>0.*^H5=#-*P?MN1,J\T<:)/_N--XR-XWS"KFE&[$9L$3T;D-BSC/AZR9HGZ6$=G.(H:UW5I3DDOTZ3EY'4Y(-9?VKA+F: M4^U03K2A=B4E+)&Z^O(/ZK3@-$B?&PO+W;Z!H;%0<_(W$"^Y,3NZ-+#ALD-/ M^6HZ&%)OD_(0F*LL'62'G9AZOVTQ=&])E2M4*;O* W!KD7(>V'A\I1TQ006M MI$*DFZ' %Z(H>RNCP>3<2O%L]MS(@,)U*5?X1&^B=]$@I=93(:]?N1=;I#A= MY8/BW/8I&7I:0SVYVB!"T[=0]"WTM6SN$W@>F#YR[#ER^YW)270/IA3UA']M MZ>^&MK4HZ]XQ_^S+'9V7VE1]R$MMG8^WP0VJCH(4ZA]]]ZA\U*K01[045:@* MZVCHBY>4? A#C.W@I;:9G#QT=*W6X3FW!-@IU[]YQ]WC'\-M_U ^B_>_&Q^Y M60MEZ;*N2#4=C$<1F/X)[Q=.M^'97&I'=SA,:_KK0>,%Z'REM3LLO('C?]3B M+U!+ P04 " "HB&590;PJ61() "-%P &0 'AL+W=OF:GR)9OX8;=K?OD"Z6">-B7QM\- MBA"J%Z.1SPJUEWYH*V7P96O=7@8\NMW(5T[)G!?MR]%D/%Z,]E*;P?TMOWOG M[F]M'4IMU#LG?+W?2W=ZI4I[O!ND@_.+]WI7!'HQNK^MY$Y]4.'OU3N'IU$K M)==[9;RV1CBUO1N\3%^\FM%\GO /K8[^8BS(DHVUG^CA;7XW&)-"JE19( D2 M?P?U6I4E"8(:GQN9@W9+6G@Y/DO_F6V'+1OIU6M;_J;S4-P-5@.1JZVLR_#> M'O^F&GOF)"^SI>=?<8QSIYB6Q,< M_.2A1"C$:]Y>.7\["MB*%HRR1NRK*';RC-BU^ 6R"B_^8G*5]]>/H&*KY^2L MYZO)%P5^4-503,>)F(PGLR_(F[9V3UG>]"MVOU>9W1G-&?+/EQO/]O_K*8.C MO-G3\@@[+WPE,W4W #B\<@:%P2HE]S%Q%F2N0=T'M M-\JUR<_5CHK!!R M;VMR/N^B35;6>>>O1U';R)(<3]X6-]/%;+CN:SY-+STG>=X;A#1JE";1#XU& MDRN'#"\SYSM_3@P1E-M[<4 )H.BRWT^58BFES3C\Y^3(SDD89=%*L5'AJ)!L MVARLSLAUM)+S[[R#]C'9O# V"*_AZ:W.I E#\199JEQ M1*9=EF]]X$]D#"W M(T^CIS)X20?QN9:E#B=2A]\VZB3\U&'B+O]1B&C5%SP(I1?)Q8+\3WG":V]G"H_R%FV_>=P$MT_"!NQ&*:3!=+FC87Z7J:S!=C M>EB(=#Q.EFO^@I]9DBXG-%Z)-!FG*QJN.6:P!'W$-I 2JZ7X:(,L(7>Z@N!Q MVJ$:=E%>1%]]W4"GF($)!9Q<3AHO8P]0.1V9QUB3T<*2O0M*(Z*#M 9%3:A$ M(6,*;2CAFOU4?L9: Z_'L&J,:\$8"AG J@C/1C5YB]DTZX('I#^O]X37;1UJ M=Z8X'P-,K9C(6IXF >J!=?"B-NI!N4Q[UL.HHRQ]#X%"5E6I5=3,%\BE'QE/ M9WD0I?85NPEN;N3RY*^[G VDM*ZD"^1?V8GE;^1("5@[O=,&46X3&.S7(MZ" M_4Y*.@)+J3S4_YFL#F@"&27X[R,/,::X:8.O6;]\MDFQA=,,C*[:X>GP#1H0#;L0J31;3!0W&R6R]QF RFR3C MQ9Q&TUDR2\?B';+&8*OE))E,4[%(,9/H8Y%,4W#+#": MIGX:1 AAO&/H%(9F "A42,^2YS M6_6J4&GK7%2E#)3\Y&X@'\SE*2": X:^46\XTFB"*KG!?D&K"%$<=CZADY%' M2;CT_AFQDHHV*$)R0(-T.\6YMU-VYV0%Q@$0=[$WJH/7+3@EJ*@1F4>OQVR MU$Q=%^%SBK2>(&ASECF0(:.YT%4#(LC7K@Y/,1PD\-,KVA/$.74UDRM0N_Y$T0T+;LFZXQ8I"E978TQ$5&>:[6NF_ M_68U29<_"76PY8&ZW#V M>>?=CD4D[V@HXN=P>6XYSCW89>AL8QFE2:LT&)84X'2ANA2=**^S)++NU4L M:(=C>YRR+,YN*ZTU;G; W1\ M',?:/12_4?_W2/$8-G(M[]&O'AYHBYI@'YMI[C!\O?&9TVT=?,KP8V&YHZX= MH:83\^3:MJW[$(VTCR%(=+V7@ @542*3C-J&IC\X]T#-H<&1:[AF:-].5?FY MLSDTN=M7A1KN?@7*K8J=32$/!%.BM&U9*R[L%@\$'MN$$FR_[:T=I+6DZ7I C/R"%.)4T/EED?8KIO8I??M4M75;%?XGK'FJMB]KJ& M:$/5;('&ENK-/%G-5S#-9.VG=):,9RD-TF0UFS&R_M2ALG^V:/O#F_3Z6)MV M!\WKPR"U8&"=H'^/WJ-^RWC5D'SL:/*ONPP/$9M=':/%9VG-L9*HBIY)D@&W MZ#Q"*> O7@50<\2967?>_O_RS)ON,L#+?=O^)_&L M)(Y\'A$:+M".H00B]%'W[BCY=?6Y!#YQEI]$'QM4VDPZ=R)=#A*\<#X!-]YO MZJZGSBD><>)%#W54B3ACXOIE0\VA&O+>X22<7R9[0I-M:?NVO6M^&:]8N^GQHOH7M&8:!;]46RP= M#Y?S@7#Q\C<^!%OQA>O&!A A#PL%?G&ULQ59M;]LV$/XK![4H$D"S]6H[J6W 2=:MP#H$3==B&/:!EDXV5XI42@G433HUXS+8#KV>[=Z.E:M%5SBK0;3UC73 MFRL4:CT)XF"W\9XOEM9M]*?CABWP#NTOS:VFK_X>I>0U2L.5!(W5))C%EU>9 MD_<"'SFNS<$:G"=SI3Z[C[?E)(@<(1186(? Z+7":Q3" 1&-+UO,8&_2*1ZN M=^AOO._DRYP9O%;B$R_MY0VS;#K6:@W:21.:6WA7O3:1 MX](%Y.(UW'!3"&5:C?#;;&ZLIG3Y_=@Q=%:RXU9<"5V:AA4X":A&#.H5!M-7 M+^)!]/J$#]G>A^P4^K\(UDF%>N.JE!4DL9"HSG5,1<;4!45PHH* MO,$2+!9+J81:;/Q1-\RBM"!X096,ALKP2\LUR55:U3!O#7$S!I3NX+O_AKN2 M-3V8[:3YG@9!4)!8K;3E?](?5]K@ N;J[SOGJBM33I KU&"72+W#-.BK']!8 M(FU)K358M8)XK0B1''""G8,]^$#K@FF]X7(!*R;:3H0_.0K/Q$"E!#4W)#\H MR\2C$)EV_@<=.5BUBU3G E&+PQ$9<]2R,!L.'J@]S32I[+-(6?3$[%8M!$D' MY5'SF$ZIV$8D]A%)__>(1.%@,'1N7Y#_V=]%)$G.89"?#D:2I.<0IX-O#402 M4A@[1H-A_I\'XB(/2AH6HLE"Y]VZ-V2QE(W4=3C:OOF%YP:4!@1:J4L7D MNAL!NP^K&C]VS96E(& MDA5[X[A%7VQ>9LZV4+/'!@*V+0ICM+2J]6011 ML#OX)->YXX/^(E6UO_"II&-2#BIK=-%JTP,"EDV M_^*EC<.>PM7@'86X58@][\:09_E!.+&<&[T!P]*$Q@OOJM2 M]-SR-R27[+SO"(M/^DFK=]OHQ>_HS>!>ERZW\+%,,3W4[Q.'CDB\(W(;GP1\ MQ*H'PT$(\2 >G< ;=HX-/=[PI&/PU\W*.D.Y__N8CPW$Z#@$]\.UK42"BX * MWJ)YQF#YPW?19/#3"8*CCN#H%/J)R)_4.\ZJ]?9SCG"GBTJ46U#-48+&46^" MSC*9H TAH?O:H0'\6LN*^LN!*%.0SH+-A<$4$J7K%"HE'#<]9"*12CI)8#4E MVT"IR\M$E DJL5((-"",<+)<[TR2%CQ3A_,1W4F=6G"YT?4ZI^P.!]"#IUR2 M9@/G7DG_:!L,$&N#R-SL_C7DPI(Y;F0#FC>TO^&X,Y&O3$UO5)^?I&G9\/> MK#M@6DR50HL(1=..R.T(U$P.BQ4%=]=17IT6PY#HV K],%3;L(&-XEYT:.C@ M)(/6%(7G_UJBI#_65:5\5BGVB; Y9/1-H.@WWY9FS%.,"9:2^Z:L."*"LZ%( MRU[#[TQF?PHUYMDTG%.,7:YK2V3L!=RQL4ILFXKJZL +D4.$7QM/C!/S)K5P M!M$@G$S&O(C"X7C0YFI?1AAIF6QF= %ZQ5GFK>&OPJ7.+FNN:FO1,5Q\%4;C M*@CZXY)I](FNB;Z%#%D'PY[ZFTHT>!! M+ _3^ &3=A.%\/2?J)UO41B*]*@W@B&5SANM0XI3$OL>QKV8?N^%JTT3Q']C M?AAQ+W^L +]Q[IMB\#+GKU[L]\\%)R>\HE23U)C2$XYG0UY/>!W-?'E->1V/ M9KR^@EDXFGJ1V2X_U.\9#]AI.)Q.X;/F,J2 MM- Z.)]1><07\,#SG4+V+%3MTUK2*^T=I#,838GL#(Y]FOI[#X0"S=H_@VAH MM-QT!3Y;N-TY9\;*^WH\>*7 M.;T6T; W6=:N]VIOS^4_4$L#!!0 ( *B(95DC3?.:K0, /<( 9 M >&PO=V]R:W-H965T*.M$1XV9!^(8>;K0]6)FS#KHQ-(%EE)6O*^6SV MJK12NV*]S&?W8;WT;3+:T7T0L;56ANZ6C-^OBHOB1[L@8!@*-3P-F,9IDQ>/U ?WG[#M\V)%=S=H@IQTGY2$%W&KHI?6=MU8G1#E%(5TE[KQ+ MVNW(*4UQ62:88,%2#7"W/=S\,W _B/< J*/XR554G>J7H#;RFQ_XW<[/ CY0 M,Q67LXF8S^:+,WB7H[^7&>_R2_P5;W14QLB.+EXWP M0[J.C52T*O!2(H5'*M9??W7Q:O;C&1<6HPN+<^C_/67_ TZ\0QZMTUNM)+^B M*'ZI"2*VD:X3V^"M2'BC(OG^"Q0*46B' T4AH2N(U#4 \ENA@,P1C2+5,N5M M-I1,A_?]J=4(NTZ,I0>KG7B40?LVBD:&Q'SD#I 1RD9J&P<&M0[506+*#",= M&6N"1K_1V8B1*9/]5G\'M=&3;Z+8=$;NXT2T,!W$OM:J9C(63_"(3@6.*OG0 MAXJ>2+7<5> =(@3/)_GP: CHB+0 M0#EFT-6A)\[AKW4S 7FP?_;OF/&13^>I'Y(STOH"'HP#+O^.#$*RH4.:J],D M]WV.67BV@9YM,B5.[H'H2]RR0.,32DA+ \!MX(+B6F;.J$)&4JG%91,PR$)" M$7"?YD1%L<E@%Z\#2^A7K4K<\8'(9>8AG6ARXF8- M-./GAC&UUZG&B.3J^]O3FYZ\/1ZX')@X M)C;;&O()970QZ13X]YHJOALK:?I2-RN/AA%R MNLLC%Q'UK4O]7!I/QZE^TP^S9_'^+\%[&7;LH:$M5&?3[Z^*/GV'3?)-'FT; MGU! >5GCGPD%%L#]UB.SPX8-C/]UUG\!4$L#!!0 ( *B(95FJ#4!Z; T M !DG 9 >&PO=V]R:W-H965T:A\!B-]M?OJ^KFI6,\SOJ#/60? MU5755:\.ZL4NR[\4&Z5*<9_$:?%RL"G+[;/+RR+#5R]X[#I_]2*KREBGZCH7194D,M^_5G&V>SGP M!_7 C5YO2AJX?/5B*]?J5I6?M]>: M^GN6';(L9:'>9/&?.BHW+P?S@8C42E9Q>9/M?E56G@G1"[.XX/_%SJR=> ,1 M5D69)78S.$AT:O[*>ZN'SH;YN0V!W1 PW^8@YO*M+.6K%WFV$SFM!C5Z8%%Y M-YC3*5W*;9EC5F-?^>JVS,(OFRR.5%[\+-[]5>ER+V0:"9YX2@)'XDV6P @* M27I\<5GB6-I\&=HC7ILC@C-'+,1O65IN"O$NC534WW\)=AN>@YKGU\&#!&_5 MUA4CSQ&!%XP?H#=J=#!B>J,S]*S4_[I:%F4.,_GW*1D-B?%I$N0ZSXJM#-7+ M 7RC4/F=&KSZZ0=_ZCU_@,%QP^#X(>K?YY*^\Q'UF@]IJ%+R+'$=R[00-ZHH M98G%@><'IQ>)CZGX1Y4J,>.*#>*SY/I_N="%!WV MA-QN\^P.1]":*R $S(IY?ZV6LQ%;FI0XUEI>%T T3+(G(MJ3#PA$I_L=)59GE^\,Y M&%*9ZY#8X)GC$5&E&M2'@YO;SP5IS8R2@E2HS3WEA$N@ME4Y8S@XL=M(9=W1 M8B-Q@"NNJ[RHK#@D= X,O:/W+2F0=*\+P^'(\68!UF150<0, ;%3N1+R3NI8 MDB) WZJG>D"_ JS23-\27%R?D%&D211'D.H16; WC72Z%G(G\Z@0., JS1P$ MNNU14,6=!H/B#K9#"LE6//Z0C?STPSP(O.?7]=:&2Y[PGU\ I>-8+!7QAM.6 M$EJWVK)*^&;Y-;.U%^I^JW.Z(G6O\E"3WX$ :(H,\_D.(T1RI33MEZO2DCQ4 MW!5TE2N*RZ2I1W%U+*^01:VO/GUSR6DFXBQ=8WN?\*HJ*TPS_>)!L=T&#/S M /KC7)]8(\_'OY(-.3>D^=W>Q DE8P:NB.P%2J0E:94LP1M$M JRPK;'AUF2 MP&B,8UEHCUA(79"7P&^6>^$[WN+($7 '3!#Q"HS1.770$OCC3*;?R75LW[VZOKVM/@1*@ M]5+&I(FIYYT1N073GFI/ FI)!JTL,S"O+65WD4& QEK!@BL^V2<#6A$6$_40 M0*'"BFUY^C2AY 3;5BHGN@!$G0%3EFJM4W8=(@H#7P)XQ%6U1DXF_"G;W'NU MS"NDLO2.59(OP? M:94_^='*H_-6#V$W"I>;/*O6&Q#CXMRN3-R;M;6N;BD@SVH2$D :@A_HPLB5L43GR85E?NN&+W;_&9N3W MY#818\PQ>>?KIL64FDU== ?H$.LP4W)N(55$8@!GJ"QY9 M25PF"J OJ+CN9%RI8\RQ>8"1?J5S6!P24XYXD=S7ZP\T3#H9ZK]Y2%_O0^TJ MUT!$+!]U^$5C;(RJ2"Y%8I)^DYV=A,#)XC08D/=CCV:W2&WY1I??9Q6<], 9 M,'SF'A\$XO%H\A@8MB&M/ATT#0I^M(G';3=W.Y&&G A&=.")D#M$31>;4!OO MS2T,.+<>7(BU2E4NXWB/; 878]+RS."'3DEK%*#(+ '=8#JK7U=A^!7GD&G!NLZ+CF9LFV;E:KW.U)I$^$-ZDA0[%'^P%0X84<]G%A1C^ MD]1P<3C\6L8$/'Q#0\"VC4'WDN*/?//Z$X,.#-:;W/ MZPT'HXFSF,_%'S ,6P_AOA47"\ DMI<'" 93)NA-W;D/@B-#<#IIF&=/.$M@ M[BVP8SYW1PLQ<3W:/79\A/N;MF0Q+O*9:P\J6$YXB:DA6RO/TMA$#=PL$-<: MMRU'222Z;LR; @$D ,RPJG*_U2$3H#!9K#1Y2=\A4.:TI8\E>(;7X>#:U%=G M&:XY7")%/V#RH,@ZQWK!E4Z34!PEPLW1S KGL> ,)8+-8X#'.-/Z.1Z8'2X8 M1,)7Q1='>PJ54L2-E:0T;Z.WP .9F%SI$8R2>ENEI$QI5<<>/&"YRI0X-P52H57IG?)!(F!J5DR4J%T/R]YP# 8A0O**XC<=5 MA52C46<6FCPJ5%UMDGI(8T6%7 :N&"E)J6L.@>">.@8&.YRKV@3.AM 2F:%C MUJ\ RU&=5YG*0@(K^=X> ?LLCT5[>W&%L3XK:S/W'4,!W\,1VC/.FE+T/24[ M)_']ZT#NS<; 9(.](W?J-?@]]CTQ-* \6;C!M,;5X6B$T>&(9X*9.Q^+]TTU M/O1GSK&$XP2IJRC3K:3:6@RZIIJ4^F?YOZ8RW$99TW1T['WUF><8?X MS/O.Q"==94W]_X?ZV#E]QMD^+4&:\2MV2 [CQ09>1O&T[^Y%AT:ORB031,UL MH;I%$(H*-!%Q39W%.I*F-VD[,6RHV98 CV+<,S!#J-G]'B!^I\OOC; MLW^V M3X>)6__U359PV+$!I( 7!(Z'1 ;>X"S&4TJXG,5TQG^#R80B/9* T,28"+OB M;,NQ:X+4;H[_IS,?9NTL?/XS&XW%+:**":^FKB)MCISI>('_@V"!7,SQ D_, MG\$GK-8^.(3MTG.78(C4L5" MRB2K2+6AW&ILX*:)@3#0&8U(2!]!.VL&CF3]6B2S+CGB;OVVK>.8\ARI<>\H M('XSL.*VQF,CYNES'BQUNZK;2$ICOTF!I"M S;1FV($\7LN_T].D%=CO"-RY M@.8;!UV"8^["[##MNKK&KS]>]%6YVVAR76JY=&(C=WP:<3C=W]FLX:FT64/= MW8,H@3LVE0#4 YGLHX?*QSX2-UZ[J*_E6^[XW*B&T^L\ XPG#+>=)@LOR]ME M6[N,/*K3]+2I[(D,M9L57:4I7#\T63:G/E5 MGH>K^8A#6B/!Q,GAA1W^#4GLC*W)LR,M96-EOAW_'>HWUF>'@X; V(:NH$]@ M4:=D_>&94PI']I!+&LB@T5WI]>Z7I*K6-NO;32;AOKUK-0:9E&J*GQ MU#V44-2DZ[9!O9VQ@VKE9A?-FD8L0D<6,HR11@RKIO>0-1\JJ=*5.GI*Y9>) MHFVGCDT-L*9I56CSE@T]VS;F]*-P>Z73>2>[K>T*C^28HZ,9VY+HW3\U6_G;T[U.P&V\ M%T\61V'3'\_:&/W8".@_0]02P,$% @ J(AE65?L.1W;!0 QA !D !X;"]W;W)K&ULU5C;8FC2^Y,96TN/5+D:NMB2S(%25H^EX?#2JI-*#LY.P M]LZ>G9C&ETK3.RM<4U72KB^H-*O3P630+;Q7B\+SPNCLI)8+NB+_L7YG\3;J MM62J(NV4T<)2?CHXG[R\..#]8<-OBE9NZUFP)7-CKOGE378Z&#,@*BGUK$'B M9TFOJ"Q9$6#\U>H<]$>RX/9SI_V78#MLF4M'KTSYN\I\<3HX'HB,L+S6E"W_%*NZ=S08B;9PW52L,!)72\5?>M'[8$C@>[Q&8M@+3@#L> M%%!>2B_/3JQ9"8NO"G+^[(U.347B@[PA=S+RT,CK MH[25OHC2TSW2+\1;HWWAQ&N=4;8K/P*2'LZT@W,Q?5#A%=6)F(V'8CJ>'CR@ M;]:;-POZ9E\T3UPJEY;&-9;$'^=SYRT(\>=])D>-!_=KY"1YZ6J9TND 6>#( M+FEP]OUWDZ/QSP_@/>CQ'CRD_8OA>+RT^%"0>&6J6NKU#TZH^,G#$;4U2Q62 M"CF-#YZLJD2-OR;#1@=28PE4\BK MH-EBPU#([!-X"V%6G\'K%OH@1)4;"I5#=#T4OI!>2*L".6<* , MQ2UKB!<<+WC65WZ[1L,G9OV#M7I?)KQ@KNLM:6%C\B4L@-]U.TN%(W MC.43 N,R%0DW-)Z5.\8@@1Y=YY8[-S&\)WA,.SY_39+YAPW6B=R: M*JQ^3*X2X;ST#3RTCA(X9SIY"I] J54(4NM.;?0SU+4&!S N%./T^AGW@$P M(/JBB]ZG&WY&>%AO0-)Q9TZ:[8',X(-"KL? E0V"W;L%P;;PR-@XB:%ELH(7[ M,BX$"&$PM$77FF[TCONA(S4V"_ES?UD!PB='R00T*LO0>8'BR20Y[!>Z"/G" M$M@66PAQ"Q%H "@4<[)]%PCB>)@-V>XZ1KMT7N:VTJ%$W:4"D$PFR?.G M0<.\R+\[4H,/3 MC)9+8C^7VM.'G41/8<:\50IV4R)\[#H(?]D47/9)%[2OQ#Q)7MR'>:N ?SO,EY%!/(N8QMTWIC0Z)>MQF?2J'0 R M3***Q_4X<2&0EA8\@'%O1#9P@8N#1RNY.[=$?V!<8.WMH C.F++INBE60,S] M7L+,U:-*Q!O/"_VL$N;8E?(%S@UY13=PQ(K*99]>NS-D*%44AT=P$Q@P#MQB M9-2:!B_'>A+,:T>L-@4WGMX/?:O= [&*@YSA#%4H'F% XOTYQD*]<,E]%YC1 MUMVR(KL(-VC'X+2/U\Q^M;^DG\>[Z69[O.&_E7:A *"D'*+CY/GA0-AX:XXO MWM3AICHW'O?>\%B01"W@#?B>&^.[%SZ@_]?%V=]02P,$% @ J(AE67+B M?.!C! V0D !D !X;"]W;W)K&ULI59M;]LV M$/XK!W7H-H")]69%3A,#3MIM!=8UB)OMP[ /M'2VB%*D2E)Q\N]WI&37V=QD MP+[8I'CWW'//G8ZZV&KSV3:(#AY:J>QEU#C7G4\FMFJPY?94=ZCH9*U-RQUM MS69B.X.\#DZMG*1Q7$Q:+E0TOPC/;LS\0O=."H4W!FS?MMP\7J'4V\LHB78/ M;L6F7T2(YO\J]?3#X7>#6'JS! M9[+2^K/?O*\OH]@30HF5\PB<_N[Q&J7T0$3CRX@9[4-ZQ\/U#OVGD#OELN(6 MK[7\0]2NN8S*"&I<\UZZ6[W]!<=\IAZOTM*&7]@.MGD<0=5;I]O1F1BT0@W_ M_&'4X<"A_)9#.CJD@?<0*+!\RQV?7QB]!>.M"#44G]2XFCH)YETDU E\-P.DW@&?P02O7 M6'BG:JR?^D^(Y)YINF-ZE3X+N,3N%+*801JG^3-XV3[S+.!E+V1^BYTV3J@- M_+E866>H3_XZENZ EA]'\^_.N>UXA9<1O1P6S3U&\]>ODB)^\PS7?,\U?P[] M_U3I6>#CM/]C-+BCRAI8+*\A+6/XEYX,:'08'J2UPZ$%;M"_-$2C!FZATFVG M53C1:PH(M!3N$?B*!@AL*6Q#OATG& 3RXJH27((X8"$LX#V7/5G4-"8VO>1& M/L+J$5R#4#4"UP=$:JQ$&"@M_TSDA0I/:G_44$V0>$AO+5BJCY Q-4XBNYMWD" M]/I5F29G;^R+_&W(\CI8O7O JO=##CZNUZ)"PTA!'2SM$0C+QHSH]""AP'4G M@CU0P<]0*IBR6HHZJ$WC4-A36$CIJ^>.T.^,H(IU5+(Q/KF' #L2)\3.DUKW MJAI/J4.&X$%TCWJGA-\MG6=T2AUVCZI'7^+-U_8D/\["A*X]U5#\,#_1?&]A M):3T<7A=4T:4.BE']5AK2G1KSTE[@_AD9,%OU*1/G_C)XW^R@]4/@:/N+65E M?_SG]@ES^ [*&4NSTB^F+#L[HT5:I*Q()@B)G13J#:4'G M,TC(XZPH("DR-LUC^*0=J6H&*3QT,LU867C()$_8;%;0*L]+EM&[2:MXQLJR MA%^UVIQ(ZI$Z%-]9-KYEOK#".E_(&^.+Y=]"*A1^Z47G^Y.!PJ&1/^Y;22+W MW7,"QE]^WK>W. "SH^7QQ3V4G8:ZPW9%G>PG^UNLQDW"7E(R/V-%GOD%Z9>F M-)AJP2&9L3S.8<9FTY3Z9,B'O@MD#0F;SF)(69X4HW@'6BR"%H16E*S(O(C3 MG#2,X=CPGAQ)^K1=VT#<9%@?&AAQNST,>Z EVA)"D1I)QV5LNY[ UO!%LKT'W;4O6T8EP> M%@$)G@_NFGUM[$&XG'=TSS;,?._6"G?A@%(U+1.ZD0(4VRV"*S);I9;?,?S1 ML(,^68/U9"OEO=U\J19!9 UBG)7&(E D#^PSX]P"H1G_'#�:45/%T_H__F M?$=?ME2SSY+_V52F7@23 "JVHSTW=_+P.SOZDUF\4G+M?N'@>9,H@++71K9' M8;2@;82G]/$8AQ.!R3F!^"@0.[N](F?E-35T.5?R ,IR(YI=.%>=-!K7")N4 MC5%XVZ"<6=YBWK^(4K8,UDS!IJ:*S4.#R/8^+(\H*X\2GT&9PEBT?HD6#6?&S6:OX(N"&=6-(HA'$49Q>P$L&-Q.'EYS!NZ%*-&*O7YR$OZZV MVBBLBK_?\M?#I6_#V4Z9Z8Z6;!%@*VBF'EBP_/".Y-&G"\:F@['I)?2?SLE_ M1X%O-0,\ZGI#;5-HP+:V5=V40$4%5<-[PRH0*-MXV0YEM9-U7RO!L9/U#+$4 M8Z\2#[=HP^L3FS_[DYRL?FD$F%KV&E7J$;#'DG7F1%&%A?SQ)[EN^Y8I:J2: MP>V+T>\AS4>F5"\+!=3':31\0=L^\ M+@U)/BKRV)/=-$R8AG+^Y$.)#\X1808;(\M[D)V/ M>UQ,T;0,DB*&M"!PQ[ 8F]*JUHZQ%XW1@/#6#3*9 ,E05=MQ^811]SQ=K\H: MGR3H.!600H;?!*Z/23SK2S$B26Y)FDX\(99D)#^-X1#IY]A@X,9Q[DF!)!EG ML2,1&72ZR_2%)./42L3C:0[K\]$!(9U>WMN:<8G'.J6\[+FK4QO&PO=V]R:W-H965TOVVH5+0 6;V29IO_UL0](D)1'J\@9L<[__ MW9D#7W]#V1./ 01ZSE+"!T8L1-XS31[&D&%^37,@\LF2L@P+.64KD^<,<*2A M+#4=RVJ9&4Z($?3UVIP%?5J(-"$P9X@768;9RQ!2NAD8MK%=N$]6L5 +9M#/ M\0H6(![R.9,S[-_.4O3;XG<"&[XV1RN21TB<0<;FCZ)XE$/# Z M!HI@B8M4W-/-%*I\?*47TI3K*]J4MKYOH+#@@F85+"/($E+>\7.U#WN ?0IP M*L Y!KP3@%L!;E/ JP"O*>!7@-\4:%5 JRG0KH!VTUWJ5$"GJ8=N!71U.93O M3[_\$18XZ#.Z04Q92S4UT!6D:?G.$Z)J?2&8?)I(3@1S_(+6',V!Z>^&A(!& M"0]3R@L&Z"MZ6(S0IZO/Z HE!/V*:<$QB7C?%-*W4C##RL^P]..<\..B.TI$ MS-$MB2"JX:?G^>X9WI0Y[Q)WMHD/G;.""\BOD6M]08[E>#7QW)S'?Q3D+#XZ MC]]A)G'[)'[;/'BW!A\W#[X.GS0/O@Z?_M_.S]Z=^T$AN+LOP-5Z[GN^@+I" M+^6\>CEU-O5XCD,8&/+PX<#68 0?/]@MZUM=E5U2;'1)L=M+BHTO*3:YI-CT MDF*S"XD=U+&WJV/OG'KP4S9&"0EI5ENT)=O2K.I_UH'7Y4O.TSY@UTEA*,4EM*5==V6S0,KN[9R(FBNC_1'*F2#H(>Q;'2!*0/Y?$FI MV$Z4@UWK'/P#4$L#!!0 ( *B(95DS;Z W+0@ +LQ 9 >&PO=V]R M:W-H965T3F(E=H\'XUD&),4RS.^(0RNK+A(L8*W8CV2&T%P9(+29.2/ MQ[-1BBD;+"[,9W=B<<$SE5!&[@2269IBL;LF"=]>#KS!_H-W=!TK_<%H<;'! M:_*>J)\W=P+>C4J5B*:$2;,Q2,A\@?^Q,D8RQ(G:V; M3U4Y2"XH:Q\8V:!!MJ[F0[35$_[YW*#0W(Y@'DM MB;@G@\677WBS\8LZXSV)'?B?E/XG+O7%&\Z^?9YT]I]*Q8[DGL0/3STK3STXQEY_UZ;\GL0/_\]+_ MW-GIMS" !<6)&^/7[P5= VK08+N$LS,9]Z+;X9H&],P1C&6 M)C_(&3+1.:EB\=!-Z2L'X0BS"&&]D)I,$ .H:LNQFLL;N+^:QAGZ !?WGZ*- MX#"PB40 DZ9QB4%[)7B*%) >4CS_#6GJ7-9K0=90 ?T^V^BK\^%\.BZVTWVU M0YZF0'? />%'M$DR:6*CB&KH U\L,[6#NXLXT%D2H,$_,N@>Z"=F4HF*AO3K M&YYN,-M])76UI^B*,9B,Z!:(29N'F][KQF*> ?),W27"9EA*(7._R"AJ*#/M@EFYVIGRX-6*:IP&&-?X#)4@<&]UG'T=%B,G MRD1>I:)CRI$$\AE3-$&O,T;VH#4=(G!)L$@H=#B%0006(3DHM3D!Z!A-KJHA M9Q@=IF\2 I;/'$O<>;G$G;LW<9S6[;77[JA'"TS=JN44Z+AN>V-[ !@[$_Q M55+KJR6N99&LA7^G8E>GE:..Y\SXNX<-+48@G)7J/;L5]/C,$]H/TEJ;3I&N M-GUKTW56NM%?WF"9XV="]NC^P$O+78\DM57%,0&69XT*8TU25(C2%4 87P#!^ MR".@72T$(!%RQHH_^>DK1H01X"&B8-\R=2R2(8" :I<#C_S<+-/04HXU%OD_ M,]IX]LSNN0_M37#3$F9G1>TT.\6)W+-'S%D4ELMH_*+G#NAJUZ.VY*=H8&?%\-]B^%^-PQO":O,B-HY=@H.]RV'^QTYO"6N9EK7NCL%@_N6 MP?W>&;Q%L8G!W6%=C5H&]S^1P=OBG\C@;IF.-@/+X,$G,WB+PGZ9*:PV([A; MIZM3B^!!/PC>(C.9S1L1W!W:U:%%\* 7! _JV!HV]$<(WGK;89:5QX#<"'[X M3]L]A*._'O]SVLGG[C:.?BSH%'P>6#X/3L+G0:]\WI?:80TLGP=N\NWVO%"+ M:-/6X@[KZM5B3^#FE[TGYZ+KEJCN+OO'.VJ=GH*% LM"@9MIGKSFNF7\V7GS MFGL*'@HL#P5N>BG_J]]U(>OUB:"^U Z+89DI.#_)0M83 A4U. 5032Q03=PX MU.413[=BTRKF#NMJU/+4I(6GV@"Y+?Z)2YA;IJM-"U63%JAZXA+6(A-XS=CH M#CW6X:CR>'Q*Q-I\:T#"T3UC*G]2OORT_&;"E7D>?V1OS[_6<(L%H)I$"5E! MZ/CL&>R;(O^F0/Y&\8UYV'[)E>*I>1D3'!&A;X#K*\[5_HUNH/R^QN)O4$L# M!!0 ( *B(95FW\M'R*@@ '87 9 >&PO=V]R:W-H965TYTH%<5\6QI\G>0C5 M\_'8I[DJI1_92AG\LK2NE &O;C7VE5,RXT5E,9Y.)J?C4FJ37)SQMQMW<6;K M4&BC;ISP=5E*M[E4A5V?)X=)^^&M7N6!/HPOSBJY4G,5;JL;A[=QIR73I3)> M6R.<6IXGL\/GEZ'PN=7^DGV'+POIU94M?M=9R,^3'Q.1J:6LB_#6KO^E&G]. M2%]J"\__BW4C.TE$6OM@RV8Q+"BUB7_E?1.'SUDP;19,V>ZX$5OY0@9Y<>;L M6CB2AC9Z8%=Y-8S3AI(R#PZ_:JP+%R^43YVN.$)V*2YK#P'OA329F,=$T?>Y M7AF]U*DT0/&J?'I^- \PBY>.T,>$RFC#]A G/Q&MK M0N[%M25NU/)Q???'9Y.?MIC[7%G[?$^ M[1>7TFM/.;LAW29(RNTN([] C7B7*Q12:LM*F@T%I#:RSG10F4@MTF=\?/*( M4R;I\U(;:5(M"^&A0Z&>0T17+[^T-A@;$-5+8D._JRK$M0$&WQHV<$[[ ZK)[6@^$C_/9C?) M8^SM(!:4T^7 5&TBW3%O>+$&:=!?4J8-\EXSI>"#%<0-XG#RY%=VBB1<3>;0 MFU.KNI!1%)%D6VCON4IKIX-NQ*[OTUR:E1)7MBRU9[Y[E,ROKY+'(W&E7 "W M;IN$19GV:6%]C>P(0[^0YPA&46>]YSN#OR^T76@&J>@3A5C94@<*9E4[7Q,; M( 2^3O/=7H\8,)] QD(6O'%L/I)#]$*EJEPH)XX.N7R/#GJ?G4AUI3W!:; M/DXC\2J&VE;:-"1:2H-^1EL?1-O^_X)!JZ(^QD;*[ _T!?Z.8.0:P6]]L 8@ MB&C $H#,T99;"PPB[#W1.D&?02*UZ_=J@=J;45FO*9L'4.G1[#B8F I<@VPN M9NESL42']YW:MJH@J&W60&&WAG9)R)U2K,^ C409VX*BMH":04E':#3,+@!B MSF#KDN8*R-"EJ-.WCNS>4MU7B">33]P;KB.Y8J.DHQTI;@_!>$P%0/)(I;!8 MA+ MDGLZET[DBX< '<0KMAE'_1XNT#_2@YQV@6O9$4-"&=FA"9I3=\K4M&=J,==& M<@.UVC4W)()Z"J+702!./I+XG2SJ#A8K:[.U)BXV5$L!W5LO"M4$\T 4"@<% M_,7XGKY_0J<&"EJ)DY3O.SB*T98@/7D/"^V=IKX_PG0=:F;O&*^4N2#3,-RU MW _F"4:O;LHX:M9]L8:-?IRVVAL>&/O(G_& M08<2]+(+^4 3!E>329=Y<6GQ![/AR]G\$L.K_FC37O2VXMI]E,SFMQ"E+9Y, MGC;,0Z+*Y(1V@$>MN* &PT\L/JSLF6J;-?S@/-BNIY9J/ ]*;64RKJE5-/A+ M_?+B-3G6]BGB37!ANT6_$IJ7J$]4*I4HRB;+N(YI M#(ZAW+)>8JNM@VX.R'('Q(:B#J"]/R'V=_N0'Y%M.E%(\F".4+8C#N\9L]Y0 M)]E"TXIB_J'A)(X1W&V;40'UNM+&\,"V1-GV[?7PI)V%&[H93AAMB);(#Y11 M>_Y[5<=;[/J#;TWI27C+"Z:ZQ4/SFQWC*#8P[+.5]%9V$\-2.Q_$!TP+9#:B MUV]R,A+7D>ZI@BB-.)\B",V!) X[P5E?->IE514\"T;1;GSGT!=]W*MXP%7; M+8>6-%,2,$ #)G=+ &SS9]NS-"33,$PRWU3%B6NKG%#M70X&U8XR[HH8JV.1 M/AL4*79PQ!(<08!OT#,^*E>CUOM*%F]RM4)MRG@T'APG%[:.[;[/#>W@B$"V M.Q6T5E)GWQCI$4^D!BXOFDS2^1.V4C:Z%"_HDN(K8IF'VXBUJ(]&(9 I(8,/ M+U3:"RX,,A290(=+D:![*7&8D$UO^"0!K5?#6:%O7//A#/Q-CQL[9Y'QX"ZT M5&[%-[X\1YD0KT6[K]VE\BS>I?;B\4;ZM73 J<@ISA,NWO+&EV K MOEE=V!!LR8\YCFS*D0!^IXNM]H4VZ*[:+_X"4$L#!!0 ( *B(95E:J[*J MUP@ *$= 9 >&PO=V]R:W-H965TK%LBH[ MZN[>AP/:4)3)X3R&U-6C*KZ4&RDU^YJE>7D]V6B]O9S-RL5&9G%YH;8R MQR\K562Q1K=8S\IM(>.EF92E,V[;_BR+DWQR?2QNKM1.ITDN/Q:LW&59 M7#R]DJEZO)XXD^;%IV2]T?1B=G.UC=?R3NK/VX\%>K-6RC+)9%XF*F>%7%U/ M7CJ7KR(:;P;\ELC'LO/,",E;>\GMBDD$SE0I.$&,V#O)5I2H*@QN^U MS$F[)$WL/C?2WQKLP#*/2WFKTG\D2[VYGH03MI2K>)?J3^KQ[[+&XY&\A4I+ M\Y<]UF/M"5OL2JVR>C(TR)*\:N.O]3Z,F<#K"=SH72UDM'P=Z_CFJE"/K*#1 MD$8/!JJ9#>62G(QRIPO\FF">OGD;)P7[+4YWDJD5>YOD<;Y(XI2]RTM=[+#[ MNF3G]_$\E>7T:J:Q(LV;+6KIKRKI_(CTB'U0N=Z4[$V^E,O#^3-HVJK+&W5? M\9,"[^3V@KFVQ;C-Q0EY;@O?-?+H7.[2REI';/>R M+"7,%N=+]CZ)YTF:Z 2@/LB8T"T9@N&37.R*(LG7[%5<)N40RI-Z#*.\WTBV M4BD"G21K\AIF5 %YZ V;/[%4/DAR<;U)J.G4 M+>_N]+E17.U*K%E.R;_E$P*R^ ("7>WPCITQ;CD!1_OC#R%W^$_M&R#(9&$4 MW\9;+-@,<(3EAF[3?+ZXNV#WA<'P9+"MU8,L6V>_(6[@6:$7F:?0LEUGC.3#??3\J&VK M5;J&/S[VM5S41G:,D=T_:^0P.%@-W:/F]83%@ZAIOM.\=FAYKM^VQ\SK^9;P MO:9YSKB.:X6ATS3?8U[',?][!C:;X;HN /+ZR86=O].ZCA6%?MN>MN[AV!/, MZK7,ZHUFUMNXW+ WO^\2\(9)@62E#\;^AM3NVAT=8L[3Z]P?4-F"5I*]E;+] M2AW;8<_ 5[JAPY9H!QGL90;*3?X#Z]\JS/FP8KE"?>_ M[>EXR:%EDP_M\.: BO#GP66C$4 O]")R0%\J7S\#XU##T+$\1]#.U,6 M@AG=XUP16@'W$.QN+R6,Q"0LS_-9 !8PF#S+M1NS.*&P@@BRK3 B5"Y0A;[E MAW8]H,H4@1L8MZ&)9^S?C<9J*;5'S>> DZ 7;IX-< -/T'G)VRE">8BRT. MIDW.ZOL2=V$$UP26@+=S;H7(.N.0.$)8D>TP\G9NBZEY$8@FG7,(I'/-W!': H8X-O?QIDQM'>KOE.#X#!O( M='RW,8QO<<2, !>V=,FE1*5\$$O%U''RT_D M/K_-??[HW/=S ;\?B ."?GCB&$R(##$2Y_WY[*,J$SJ&#^7+T[H-'BK,%0*D MER85KHW*N_V2Z5[E4^>(X3RK-S@U/,I"UE!ZZ(_IQZ-B@(3\@OAS,[A<+W=^:R!(A MTK3)&]PCI?U*O8">1639GM?DE*&3P?^IG;@P&;K!.5B%=8<\=TS85V."2)18 ML7TZ=A#9'UR0@0(R"ESBH#/.X(**+K>N>4)3.^(9'1]UC"!*M_V]N?W0XLAW MK;E1[+F!,";VS0N'SD]AR[$G2#-H23,839K$*X?D./X(0>1Q6Y^'=@#S(=;T MR],059[4:,RE3(\Y#]EQF ^AWJ*C7E:K-^;8<;QV>HU7]370K[ED_Y0Q^:\3 MH;85W#R!(5"#T+AXA:R_'Z8WA=JM-^QM\E"]07 &OF4'-MK "C'_=$E;E;'? M5II-:7G"-\+6-\+1OO%:%G "NGSNWJH.6?>DS#]MW>5>C_T%6M*YYXU+&C9@ M57+=;UFR[P '(WKFKJ\D1]P'H-#!")-4X[KD60$=PWZNY0&3H<8:(2]7NB>3 M)-%F=:'C7"CV+N'0M1'=!P%!D_F7*XR0EPGU-V=Q[/7LS M$K7.'(VO#LTIZ;S*2%.Z1U;KW 3\JE 983(0;EL(Y#N_PAF+%N]M@_>^B/,R M-E]G3-E8#7N7+U0&OGCS=2OS4@Y^=3BM[\F86%< TAI T0/PK0T(@#*:K?H& MTST U;"D!B!K !;+<1*L[[LA=TEOS0JE2I.EL6RIT536Q"8K9//82+UD]YM" MRH//*.P7X#U\8Z+4!.7^J1>!O>XO4*FW%09_KO(7'8\;NJ\[#R.?,JHG;.H) MS]0:?F37!CR]3;U%*13H%$FG'2@9>?07GAM$36YOQ,FO"U1DZ[X%J]W%^K;) M[8$=3DT9:@G'JY]X& WF^UGGLQDJJ;7Y.$CW;+M<5U_0VK?M]\>7U6>W_?#J MXR42^YJT2N4*4^V+P)NPHOH@6'6TVIJ/<'.EM?F7*5X!0 6@\ !D !X;"]W;W)K&ULK5=M;]LV$/XK!WH]30PX[KIF6%^09-N' M81]HB;:$2J(K4G&V7[\[4G;LUA&V9!]$4=+Q[KF'=Z?C^5:V7U0AA(;[NFK4 MQ:C0>G,VG:JL$#57K^5&-/AE)=N::WQLUU.U:07/S:*ZFC+7C:8U+YO1[-R\ M^]S.SF6GJ[(1GUM075WS]J]+4^,[^C+DBNQD-7O9:Z+BU$R@ERL>%?I M:[E]+WI_#,!,5LJ,L+6R<3B"K%-:UOUB1%"7C;WS^YZ'@P6)^\@"UB]@!KSE"R]RWPSX%.Q] M"H:TSVXPA?.N$H3T/_EWRI%A4[>% %2PD8UHM +>Y) 5O%D+!27EWH-Q:8QG M1\;+WGAEH@Q+#: 07JT01E6#UJ"V 20H@ "W7XMZB9IV,6 $<>+#5K2X3*&> M"FN..H/Y'2\KBMQ7J/K5#4=&WHJE1B59UY:Z1) +K@IXA^+P7N2$^E9J7H&# MX'4A.X7*$=DEKWB3X5>N44/6 _ FUNX/X+D)CHXW23PVMK/8#<:P,%00$UV# MI;,J_T87UE@RE?494PIRA-*LC>,;T98R!R?PHS%X$\88Q$D$\UIVC<92F%5< MJ7)5HI*RT7)'W_<:7KY(F,?> /,2-A_-F$A0F$3UT,H+/"..#B1D9@0 MD]B/3%!,7&;#@J7^<"(Q*Q^[(QB:(]D_>4VGP/0:82'X!R,2A&4\P MX 6^N089("!.$,:4=4$X?C25>I=99(MI$ :[HNI%3R;!3ZFD!C2&SXR%Q!WW MX\FR$J;C?AQF Q&%G@L)8AI,*$-'RGPB(319E43Q>*!/"/=]0OCO^P3#AX+K M0T)6K:QA_FEQ!4@,0;_1^"^OS:\>UWQ"3S@UV>I4XS!H^W0'1-V$I1/U-[NM M6 K\?>^;!\3M(.),8M_0*/R$,R6K,C?=B#IR1.X=^;Z)N#7=R&$7 M"Q^I+3EZ8\J>V:J'V3<]Q#>/#SQGQK+9 \+]RO8D*^I)"MN37(L[T70XP:WW M[1\F9IZ)"ELCV"3%O_Q"*M.IQ"4D&&*M<6*&S]0TV;8.SVY?A*88=JA[H(NT4Q[_)!KDKS)B/,?32DF- M,1V[4-_8_@W- H]: ]MA45[W(9VX?;L0FLJ/:1ZG<"J\IP?GG5JT:W.J4[BQ M& ?VZ+-_NS\XSNUYZ4'!8S MTP(/OZ(E ?R^DE+O'LC _C@]^P=02P,$% @ J(AE62(*\-4* P F08 M !D !X;"]W;W)K&ULA55M;]LX#/XKA&\XM(!1 MV[+CO"P)T'8;[H#;$"S;[<.P#XI-QT)ER9/DIKM?/\I.W19(GG0YL[6B X>&JGL*JB=:Q=19(L:&VZO=(N*3BIM&NY(-?O(M@9YV3LU,F)Q MG$<-%RI8+_N]C5DO=>>D4+@Q8+NFX>;7#4I]6 5)\+CQ6>QKYS>B];+E>]RB M^]IN#&G1B%**!I456H'!:A5<)XN;S-OW!O\*/-AG,OA,=EK?>>7O\YEXO$)+VW_A,-AFTP"*SCK=')V)02/4L/*'XST\0^!>I;ON./KI=$',-Z:T+S0I]I[$SFA?%&VSM"I(#^WWABJKW&_@*L2WO_L M1$LW[D+X1._AX@O?2;27R\A1)&\?%4?4FP&5O8(ZAX]:N=K">U5B^=(_(H8C M3?9(\X:=!=QB>P5I' *+678&+QW33GN\]'_2#F$CN7(OLX?OUSOK##V8'Z=2 M'Y"ST\B^B1:VY06N NH2B^8>@_6??R1Y_/8,[VSDG9U#7V^I*"/X%$$A?0I-#6J=]8QQC%[,K.Z<@=N$%@>)I-I MOZ0I_(/4G[66)8BF-?H>/9(%EH2S>49/A^ RV!9<*<+@;2L%5P5:BA3F>>*7 M-)_#A\XHX3J#(53BP0OV9>8P">/9%/(PG\_ABW9<0GORBH!-LG#*)K0F8<*F M1-#:!4VBHFLZR1V6-$#HG@O!AQ%%SKS1QHG_AHT+QJ9A.F.7)!&["9M=PIEJ MT%5Y^RPE(67AA.B=>G/1LW'1H-GW0]%2)3OEALDQ[HYS]WH8-T_FP]#^R,U> M* L2*W*-KZ:3 ,PP" ?%Z;8?/COM:)3U8DW_#C3>@,XKK=VCX@.,?Z/U;U!+ M P04 " "HB&59V8I-4+$# &"0 &0 'AL+W=O:%WW'BJMY6Q&_Y\VO$MKM#\WBT5K?P!I:Q;%+J6 A1N9MY].'G( M['UWX8\:]_I$!AO)6LHO=O%K.?,"ZQ V6!B+P.GU@@ML&@M$;OQSP/0&DU;Q M5#ZB_^)BIUC67.-"-G_6I:EF7NY!B1N^:\R3W'_$0SRIQ2MDH]T3]OW=E"X7 M.VUD>U F#]I:]&_^>LC#B4(>?$,A.BA$SN_>D//RD1L^GRJY!V5O$YH57*A. MFYRKA25E912=UJ1GYD_X@F*'L%&RA8441E&>-#EA*E@X\Z@TW#SS=8/Z=NH; MLFDU_>* _]#C1]_ '\,G JTT?! EEN?Z/ODZ.!P='7Z(K@*NL+N#.& 0!5%R M!2\>$A [O/A_$O"$A=R*VI7*7_=K[1+Q]Z6 >[SD,IYMHHGN>($SC[I$HWI! M;_[3#V$6_'S%VV3P-KF&/E]14Y:[!D%NX,-K1Z6-)9QQN$3E6E44"+^MFWK+ M;4CZ4B!735T.Y+DB,[*A5J[%%HRM"M!(!4,VJ6(,'>/1+77J%F\:VK!?":O8 MG3@IWYP$KFU@1+'!=HUJX'D"-[4@=+G37)3ZUFW"S1N@J10BM*[4;N%'R&(6 M9R-[+85P'+,T"^PB@S (V&CL3NB1L' 463F'D 5A;L4QD D;"7WC-L8ZD8_@ M61K>$&Z<$W 0PA4JTX'*]+NI/#*X_@HK3HT&BXH+@D^IGL"SR^-IR\)GLG"^<\[/?]FRC_A$>L?=N^5CK:A>*+=YR+(X MLT+ DO&8A"B)6)"E5HH3EH0!++DR@DR-(A;%(60AW;1D9BP.B>E1RI)1/K 5 MIC'+J0Q(2D(V'EOP),E9G =6"L8LS_-K7&8#E]EW<_F(&U2*TK20FAK#2&I# M0V7Z]G6]Q.I5_,NL#H:*HR'9&RJ&S_A[>L^Y>L3BL C9>U86.X(6EI:,^L4F M+F5YFL-G*8KA*$Q8D(16"%F>)!!J0#E3IA^3 V[PY"_[V?; MV_7^#^$35]N:OA(-;D@UN!M1*ZA^ZO8+(SLWZ=;2T.!R8D4_*JCL!3K?2&F. M"VM@^/69_PM02P,$% @ J(AE67+">@#A P _@D !D !X;"]W;W)K M&ULQ59M;]LV$/XK!W4H8D"+]2XGM0TX2;,%:(>@ MR5H,PS[0TMGF*I$J2=G)?OV.E.PXB^,-PX!]D?AR+\_=\1YRO)'JJUXA&GBH M*Z$GWLJ8YGPXU,4*:Z9/98."=A92U92@,+%Q)N%YQ>IE7<"GSEN]-X8;"1S*;_:R4TY\0(+""LLC+7 Z+?& M2ZPJ:XA@?.MM>CN75G%_O+5^[6*G6.9,XZ6LOO#2K";>R(,2%ZRMS">Y^1'[ M>!S 0E;:?6'3R>:1!T6KC:Q[94)0<]']V4.?ASV%4?"*0M0K1 YWY\BAO&*& M3<=*;D!9:;)F!RY4ITW@N+!%N3.*=CGIF>F-,$PL^;Q"F&F-1OOP$QV%DWM& M2WHP'AIR8D6'16_PHC,8O6+P##Y*858:WHL2R^?Z0P*W0QAM$5Y$1PW>87,* M<>!#%$3)$7OQ+N+8V8M?L?>#E.6&5Q4P4<*+\.&*ZZ*2NE4(O\[FVB@Z-[\= M2D/G)3GLQ?;2N6Y8@1./FD6C6J,W??LFS()W1V)(=C$DQZQ/[Z@WRY9 RP68 M%<(E4^J1BR5\9E7K5E\$=BB$HTX.AW!/WHJMM[7UIJT[_N2.=7EDR@YA(2OJ M>WT.5$:#]1S5KI9PP@6AEZVF2N@!?'$=A"7,UJB($. #7R"<_(),T>ZEU 9F M1='6;<6<5"V5X7\PU]SVS%Y0Z_<)N,(UT4U#4@:+E9"57#Y"&57OIT41_\]^)DL!(8/LA$+30'Y$S"RWQ MDSQ[@G;S(KU"FE&: M"V[P^P]TW1U@.!^N6V/I[5FYWC\T-L>'6.*HX\,L,7.D<*#E_8ZN9-TP\0A( M3@O+%?M(L$-".8-%![1!Q66I;7KGSTGE+^>U8Q6%]C%B^PT&(V_8\5+_AWIU& M0K;"=-?S;G7WN)EU=_J3>/VUT$R,;=\//I:'W M@ANNZ(&&R@K0_D)*LYU8![LGW_1/4$L#!!0 ( *B(95E+^) &FP, (\( M 9 >&PO=V]R:W-H965TMW1Q MM5YL679F&TC<#1NP#$&3K1^&?:"EDT64$C62BIM_OR,E*W;KN!M@V"1U]_"Y MN^=T7NZE^J1+1 .?*U'KE5<:TUP'@RP9K>E)(53%#6[4+=*.0YV?P)\>]/EJ#C60KY2>[^35? M>:$EA (S8Q$8_3SA!H6P0$3CGQ[3&ZZTCL?K _K/+G:*9)/+$?YUL]5&D0C^/A=C!S$]#V$;XUHW+,.51\K7J)[0 M6W__730+?[Q <#H0G%Y"7S]0H^6M0) %.+*PD=J<8_D-G+9I!%+#&"8@8[J$ M@EH.>-VU;M=%@AG,P4B@ME9T6.] = G:,PWT*:0@+WT-OQ/\26U=0>S7!$:\ M!E/*5K,ZUU>PL9K>G"3+36WADA5(3?*D?,ANBN \'9E@MN.-W\!J+0 MG\T2NXC\21+V:3BV88IK2[90L@*Y-?2ZL5MEF^Z=+-ZU9,^T1F/AXKD?):F% MBR-X) I[UYQ$B3U1U#ND1%0]0D?'H*J @G&$O[+.NY)$T;K+:HG+#?8]9O(A\^_B=JHV=DBC(]'4]A,HZ^]CJEF)+9 M6TC&,;R](-!D$&CR/P5ZQTRK7&'.R?0BVOEF>@'\9GI/9>'L3]/K9,J^J, 7 MBG4VHY=4FU(A*=6I_&PO=V]R M:W-H965TCI=;-T7BLLB547-FB@1I7YD)67..G7(Q5(X'GAJDJQY[C1..*%_7H]-C0 MKN7IL6AU6=1P+9EJJXK+IS,HQ9H$$F,F^\K]'?&=K1EQA6OER2@9L1SFO"WUC7CX M$WI[0L++1*G,+WOH]L;^B&6MTJ+JF5&#JJB[)W_L_;#!D#C/,'@]@V?T[@09 M+2^XYJ?'4CPP2;L1C5Z,J88;E2MJ"LI42UPMD$^?3K7([I:BS$&JU^SR:UOH M)\;KG)F%-V1PSLY%A4F@N/'CP2V?E: .C\<:Y1/*..MEG76RO&=DI>R#J/52 MLML . MBAK5$ZU",>J0'?P%7-)SFWS&2UYG0,JA_1>0]7J[1F^?N580Q.QWEL9VFK#( M#O'=#3S+=SSVA^0U:>6F 5$CUT[]0>F<'2#E$!="UPX2=DYB2B+''E%=W[$1 M>5O^#L>A DY"^UVSO]/ #ZTT2=AG4"2?:A@>&VQ^^*$%NT?R/D O,H!.9"(.+-=QV)ZL#X>L#U^<]3?33WN3?3_2 M#_.:X%?I;+&BSLI6X=2@[=?;:[\PUQ%X1Z*;1&(7E,7O>"%W)_"/,]6) TRZ M+KE\.W*&! UFMA>M$N? ]Y%ZX)L5+[:3@.'\FT-A%MTXP<6@PTMM M3)H?)FM*&H2&(PAM+]RR_>?2-/;]KM3L*#)6O:<(D<=1F<$O)E2*+7I#$34# MJ;$WH"3(6MT%=%X@56&,C:>, ,^H@R^N;5RS1@^C_XW^T@RQC<\'D5'PB^T) M-L!CYQ>#AX=[ZCP:ZCSZN>GVYNS[X\?E([T#J3+56!QX0-0F7:X:K!LS-';U MA?V2;S%&76F:FC:M3BVQ4!G_MF.HC7-1MJD8#(KU3NYCGPD,>-UMKY4HBYR3 MH]66\F)0_HC=+B7 UE&)?:3\V:*8$>ZA84%I)G M.=CLL:"L-(AH*%EI%)NG%X8X3Q5.QVQIXIPC5RD:4AB7 YQ=.!QB%RO#2EWS MB/V 33F>#,U^=-D=:/*F;T5!BK^>E^*\LAS/88D5)MB(H$:C2[.=YWBV+>C4 M91(NM; GL1@E1 S3+<3R\QPK35UV*S2R/!<$B]5@C.25:,FU&6\*9"C^-;V+ M>A#B^#X9Z:(6F,1H;60%(0WKT+%";)"T;[^8(=:;\ _8M7*@,WI18;/?F _: M!)3,?%$?V%-)\5!)\8CM(X:_9D/#,37.:D9%Y(' %";@_)25UC&#-3)MTDG*PA M+G 7WQR+55&65$&'[!W,9$LUZWKD4[<[V3AX++E"(6MGX\)._E'<]U'LR=X $/3=TML&2%<3>IL<6ZN")G*7AL^.0ZK<;N.N MG!EOW HKD MS]\62H,KH+H@#=;A>3[I;Y7I[=S?_P.4"C]&LA#FR.G:,QRS9 MW7>[#RT:<\><"8TW5O.Z!(Z72MJ ZW,A].J#! Q_.IS^!U!+ P04 " "H MB&59D(*_ GL# !S!P &0 'AL+W=O92FS#3AIMQ5HMR!.MP_#/M#661(JD2I)QFO?5]O:^RXOI(]"CK92=5Q M0TM5^;I7R$NGU+5^% 29W_%&>,NYV[M3R[D<3-L(O%.@AZ[CZOD&6[E?>*%W MV+AOJMK8#7\Y[WF%:S2?^CM%*_^(4C8="MU( 0IW"V\57M\D]KZ[\$>#>WTB M@XUD(^5GNWA?+KS .H0M;HU%X/1[Q%ML6PM$;GR9,+VC2:MX*A_0?W:Q4RP; MKO%6MG\VI:D77NY!B3L^M.9>[G_%*9[4XFUEJ]T7]M/=P(/MH(WL)F7RH&O$ M^.=/$P__1R&:%"+G]VC(>?F6&[Z<*[D'96\3FA5&=*+%\J>^3MT>7HX/+-]%%P#7V5Q '#*(@2B[@Q4<*8H<7?X." M>^RE,HVHX*_51AM%!?/WN7!'M.0\FFVB:]WS+2X\ZA*-ZA&]Y0_?A5GPTP5? MDZ.OR27TY9J:LAQ:!+DC?Q]1# @[)3MX]V10"=["K:L95-JE](,4U9L/5/6"DH M6)[G8ZI:ERH^I6I/[-6PE30"M;$IOU,TC95Y=KG%+T/3V\IE('#LX-_IE+L2 M;BFI9/P-*#N6K.Z@<01F9]-#WQ>T4Y<9[#:H7*N]Q>VT"-FWF$QF+$MB*Q!_ M441CI&PXA 5+@@0*5J01E>X8#TWLMH20I44 $4O";"+OA(NQ; DMRUD66Q+3 MA#@,X%PW^2>#D*JK$X.#,.-,/.X>7Y35.$B_7A^?HX]<58W01.2.5(.K M6>J-7!X61O9NK&ZDH5)V8DVO(BI[@&UL MM5;;;N,V$/V5@;98[ *N=9=LKVT@MT7W80,C3MN'H@^T1%M"*%(EJ3CY^PY) M67%2Q\A+$3A#4G,Y,YQ#RKJA7-6"@Z3;A7<1SBY3HV\5_JCI M7AV-P62R$>+!3'Z4"R\P@"BCA38>"(I'>D49,XX0QC^]3V\(:0R/QP?OWVWN MF,N&*'HEV)]UJ:N%-_&@I%O2,7TG]K_1/A\+L!!,V?^P[W4##XI.:='TQHB@ MJ;F3Y*FOPT<,HMX@LKA=((ORFFBRG$NQ!VFTT9L9V%2M-8*KN=F4M9;XM48[ MO;S%??_!"]%06%$)ZXI("E_NR891]77N:PQA%/VB=W?IW$7ON)O"3\%UI>"& ME[1\;>\CM %?=,!W&9UUN*;M&.)@!%$0)6?\Q4.^L?47O^/OADA>\YTZRO:O MBXW2$MOC[U/Y.G?):7>&,C/5DH(N/.2$HO*1>LO/G\(L^'8&;#* 3U;KN&2J*%G,'M"^A?(,E&41BY01JF. BCZ2AW MHS 0+2N[E$^16@IQ'D$21["'<5.K0L36EG% MCM=: ;HW:823"80IAFI:)IZQZDZG[611X<$%+2,<$DCQ%Q\ZYOU<\E$89T8D MR<2)T(@TS(YK.%3Z4!LLW#C*G,A1Q.,TLB((AYCV8_(BXG%B+*+Q-(,SM$D' MVJ0?ILWJJ-C7AV*O78HW3P7K3/MMI6@&<"=/Q"O"BHY9-ISBV'D\J_9"8612<:C#_Z +%DV)GGPD*S\".:W>7#JO#2^3"7< OZNX9\Y/( M78VY,[I%TV"<8V](]S1P$RU:>QUOA,;+W0XK?$U1:13P^U9@N_03$V!XGRW_ M!5!+ P04 " "HB&59&*X;?5P% !['0 &0 'AL+W=O09EI54ZE=5?V8O5CM MA0FF1$UBUC8PE?;'KQ/2F&#'0$6E]J(D\)Z3UR=V'ML9K!A_%C-*)?B5I;D8 M>C,IYV>^+^(9S8@X97.:JU^FC&=$JE/^Y(LYIV12!F6ICX*@ZVW'(A%EA'^\IVF;#7TH/?ZQ5WR-)/%%_YH,"=/])[*Q_DM5V=^ MG6629#07"G>-N$5 J?B9T)3:.0=&4,6//Q-69,!#UGZ5_)1,Z&7N2!"9V2 M12KOV.H'K1H4%OEBEHKR/UA5VL #\4)(EE7!RD&6Y.M/\JLJQ$8 [+0$H"H M[1N JP!<-G3MK&S6!9%D-.!L!7BA5MF*@[(V9;1J39(7M_%>^_P6[PAZU"1TK6J!>NZX5=V4=J;*F1DZNNRSG-XQ>@GC0KPB<@9KGD:M!: MN\0Z9[?,63QXEB,4=OL#?[G9+%,$^U&W%C7L=FJ[';?=^A:=@#M:F$[R)YM# M9YI#;]"1DC5:'-8M#C]"APZ/6:\C)6O4JUO7J^OL(3<578P1'>\F:J MP@[J]>WVHMI>Y+3W>'I_"AYXV8->RL[UQ):4YP56@)HD*-10:SDCLYP8HDZT M9=HB"Z(0MSP3^K7K_HZB\CGC1%(P9BVWNV_6%$'<@UO^3%G8[71#NST8:&0' M3H/E6/TZ)O&S&I:B>&J5.+:R-C#[7(2WZVA101Q%L,7HQMP"O@,,JJ0--]LL ML&E@FU_->NA$X^B!23622#G9L3I#QE5Q+PKP]GVWZ=1?V#*Y"-WCWFQ5 DZJ6:8%%U38O@)J\ MT(W>?68&T.1GL.W-)6E:TWB%;KZ^>58 39X:?EV2Y@)0XQ:Y<;O'? "9 -UV MYI0TG6F^(C=?#Y@((!.8AD.7I.EP8_7L)NK;@(5,?AIF79*F64U7Y*;K+OPC M"T?-X6Q1M0UGI"F*=JQ3WU9'$YA&'5V2IED-5.0&ZE[(KW(XO;DD36\:=LB] MG%O#'AT">W?&@S=GW@-<2(,+]3X"[)$3GP?7[$C9FC73+$5NENX'>[2;IDY) MTYRF*=JU6MT->F19KUKV "PRQR8 U@#%;H"^&?C89*9U'\"FOF4&58]?; %-E<>AOO!DK7DO>$/Z4Y *D=*K"@M.>:B%?O^E; MGT@V+U^6C9F4+"L/9Y1,*"\$ZOJ+T1TP@ $)! 9 >&PO=V]R:W-H965T1YH^7$SCY^H/?DOME5?]@.KM8Q_?B1E0?UQ\*^6VZ][)( M5B(KDSP#A;B[G+R&KZYX5 ]H+/Y(Q&/9^@SJJ=SF^:?ZR]O%Y22H(Q*IF%>U MBUC^\R"N1)K6GF0<_^R<3O;7K >V/W_U_J:9O)S,;5R*JSS],UE4R\M). $+ M<1=OTNJW_/$7L9L0K?W-\[1L_@:/.]M@ N:;LLI7N\$R@E62;?^-/^\2T1H MB64 V@U 0P?@W0#<3'0;63.MZ[B*9Q=%_@B*VEIZJS\TN6E&R]DD67T;;ZI" M_C:1XZK9FS@IP!]QNA$@OP-ODBS.YDF<@K=9614;>;^J$IR!J[A<@CA;;#_\ M],\F>8C3YG??78LJ3M+R>VGU\>8:?/?B>_ ")!GX?9EO2CFDO)A6,L[Z:M/Y M+J8?MS$A2TPW8GT."_BVF(!X@JTQO[U3OH% M;RNQ*O\VY60;!#$'4>_F5^4ZGHO+B=RNI2@>Q&3V[3>0!3^8,N3)62=?>)\O M[/(^>[W*BRKY5R;@*B\KTU2WXUDSOL:9AQGFE&-^,7UH3\)@AC&$>&_6"8_L MPR/.\#YF$N[2)KZ?)&@'YYN1!$UQT;WL=&AL;W+Y?HR!D>U MZYYAU(O-9!,%YN#8/CCF#$ZM95-43+LBYF$ ^X$9S#!&)#2'QO>A<6=H-2R] M!.+S/-TLQ,(4'M>N"R,:!$$O/(,9B=IFG?#"?7CAP?" 4*AI"M#IX=CM[\E9 M9[+1?K+1*ER0@,.JM7H,9);P%7-T 6QP! MCH;,G8O.UNF'IYL02VBJ-D-G*1N&F#L?'3C4@M-M++L>JD((W970C9B[P0=O MJFXF;RJ$EN!4&83N.GBSE*ONK!+%2O+)XI.D<;>I *68;XJD2BR)=+H\=M?Y M\M9-@*JUD)X"4$%GR3\Z9YZ\=7.F* !T$@#BG!_6>MV""'(+$P M*BH W5Q@$%CI=9X$83]"W2BT\#NHF !T4X%A>!4:\$H+SV"$F0VS5/6&SF)W M"+,BT]V-H'9W=3MY<\/(PMV1JI7(72O?Y=G]D:#E]GAT9^7)6W?^JA0C> J@ MA9R$X.B<>?+6S5FK?W=SA,.@A?3B#T/"(]I;U@8[RA"V8!921 &YB<(0S$(Z M#Y ;JH\*!BN"F24^Q170X)[9CEI(;XC/-& P&6$+:"%5RI&[;W:#%M*[81@R M%O:;/X,=98Q8."I211.YB^95OEJ)HI'5UO%:%. _\!3RY;[*T7O2D[=N3E25 M1OPD<,S)%8[.F2=OW9PI[H#W;DI:$C<^!?C" M3MIP=,X\>>OF3)$(["81 \X%='* 0Q9IYP)&>=YV+H 5B\"#U7VZH* 09J],3 MG1N$D$+26^8&,RS_6%@$42R"C-?IB8%+!*B_$0U6R"9^$44DB >QGAC$^GX? M;K)!%HI(5%$G8^1ZHG?6(:)8"TTWPYC93A!)Z]3Z0/6L=^;9;3S_)+.G@.II M4.:^UK';TI>W;F94V28GH>,3KSJ^+V_=G"DV0<;J^$2G"2%'VFHWJ/V86Y%" ML0DR7L0GAL-Z36\R&04VI%!\@GA0\8G>9?<5)X/)F46L(ZJTDS$*/C'TWR'N M,UB#%92$S<)BJ2JA]$ 7?GYS#GXOFAWXI=F<]_F#*++Z03,0WXMLOL6TIS28 M[DL?NT%]>>LF2I5R>A(Z/_6J\_ORULV9HA=TK,Y/==X0A83VMZ7!#!(2!;;E MKQ@&':_S4YU (*H]WV5X*,"":E11#.I!Y:<& ;^/'B8;%%CD1=IZ.&Z,RD_U MICL*6=3GW@8S>6^YK0&FJJ32 PWZ0&A[ EUS7_GH7?HA/)/O2K_ MOKQU9#^F4'6[^.:R<:"NDQ5>C9&^F=Z(QY1_5EDDQED%D64J8K*W!7U?9Z)+SN< M G>;K70VY&E6M]]C=Y\O;]TLJ*K-3D+L9U[%?E_>NCE37(*-%?N90<6'7'M> M7+<*+3H94T2"C1?ZF9G^E=MQ:;RZ0;FZK<;(S$SPS: MO>%^&AZJL]U/51[9(7E?>\!B$$AY%?1]>>OF0)5@=A*"/O,JZ/ORUGUI1!$# M/E;0YWK%AX:W1IY#*^"*0?#QLC_7"8(VB^?HWKGB&MS#X0!W/:6_F\9SD 6N MR (?CAFXZ66!?G"NHXAN<(IP\#''#+O![-!-U:M *N[DN."\7N/%]H7][9?7U2_T: M_?Z_39C]#U!+ P04 " "HB&59)0.NBK4% C*0 &0 'AL+W=OHU+*G91?RHOWZ\M1 M5&8D,K$R90AN_SV(*Y%E922;Q[_'H*/Z.TO'T]??H[^KQ%LQ=UR+*YG]DZ[- M]G(T':&UN.?[S'R4CW^)HZ!)&6\E,UW]18]'VVB$5GMM9'YTMAGD:7'XS[\> M!^+$ ;. SDZD*,JMD77/#%W,E'Y$JK6VT\D4U-I6W59,6Y30N MC;*?IM;/+-[Q5*'//-L+)._1N[3@Q2KE&7I?:*/V=KZ,1J_0\C#)I5>\V*MYV-C!91IC%?'9-\>DB6!9)=B=X%H]#LB$6$>]ZM^]VNQLNZXN-8;#RB5N#/ <3QM34+7AD4T8?YI2.JT$JA" M2;I%T*YECPF- X4RK3.<]A;*)VEXYLMG"ED:0,$:"F>UPMF TIAUIWT63=J_ MT*X5CJ:3:6#L<>1@&$'5QS%2<_9)*T^OT2P*I'G";-R;YI7,AOLS1$4OE#1FKI/=KDPVUS8?>[/ M@"]Q\"5#X-OO?+;4+J0#*QIQ@"9@@.Z/=+:8+LI#8AS)"0C)"2C)H:(U-3N2 MDR$D[W<^6VH7^IB%-E/$<9^ <;\_TMEZ/!OS.*#&]0CDF3T" >T1H*(U5;H> M@0SI$?J=SY;JV<4'RXZZ5H*"M1+]D<[50SU-1Z#LJ&LZZ(^V^FHG%3<"WZKH( M"M9%T-XM_#'%)_<&U/4&%*0WH*"] 52TIF;7&] AO0%]RNFZQXA$"0[LD:AC M/@5C/GW"";O/!B>!NT74L9P^D^44E.50T9HJ'WN=]1H%#O688S,#83,#93-4M*9FQV8VA,WLQR?P'A,\ MQ0D)3(8C,P,C,_OQ*;S'Q!9,J&(WM'3- M8CQAH>=4')@G8& ^1HI[EQ:?$8G:^^+QR1-LY>.#?W.U20N-,G%OW:*+Q.I4 MAR?R#A=&[JJ'VNZD,3*O7FX%7PM5&MC/[Z4TWR_*Y^3JYR(7_P-02P,$% M @ J(AE6>A@W3\L P M L !D !X;"]W;W)K&ULM99=3]LP%(;_BI6A":1!/MPF*6LC02LT+J8A"DR[=-/3QB*Q.]MIV7[] M["0-_0@!5=U-$SM^7Y_']G%/?\7%LTP %'K)4B8'5J+4XM*V99Q 1N0%7P#3 M7V9<9$3IIIC;X_AV1BBSHG[1=R>B/L]52AG<"23S+"/BSS6D M?#6P7&O=<4_GB3(==M1?D#F,03TN[H1NV;7+E&; ).4,"9@-K"OW2J+7[2JQCH6BG.I>%:) M=0099>63O%0+L2%P.V\(O$K@?52 *P$N0,O("JP1423J"[Y"PHS6;N:E6)M" MK6DH,]LX5D)_I5JGHAM"!7HB:0Z(S] -983%E*3HEDDEE(]]%4GFGYXWB$3D_.T FB##TD/)>$367? M5AK A&''5;#79;#>&\&.87&!L/,%>8[7:9 /V^4CB+7<+>1X6V[K9:O7SJO7 MSBO\\!M^5QD7BOZ%*1IRJ9IP2GVG66\R]%(N2 P#2Z>@!+$$*_K\R?6=KTUP M1S+;0L4U*FYSCT9ZJ\E,@=!'9 GH%Q A]5$0/)\GZ %8V=.T!*6O7_B:.V49 MN3VGU_'Z]G(3KG7Z ^$Z-5SG@W _6,E6H[W2-K&5MMU-ML!W F>'K77V ]FZ M-5NWE>U*2E#G$Q(_ZV,JZ_1LHNGNT82!U]UA:9WM0!:_9O';6=[--W\/ 0?= M <[$/[>F<08NRZNAVV%%]3A!:W7P>NMV!1:<,RKX$AF6YAAC1F^FRTKJA)] ME:_3I8DWW,^-GHOQ;MZWSG4@2:\FZ?V?O.\UY'T0[MUIK;,?R.8ZKW_LSK$R MOW+:2OT0ASLX[?,=RK-1J+BM/.WI58FWZ9BM>$UU6@S #]/<9YVK=,(5; M7:A'_P!02P,$% @ J(AE66F23XPL!0 OBL !D !X;"]W;W)K&ULS9I;;^(X%,>_BI4=K3I2EUP(MPX@=4 =#]?XF3P0_KB^ MHV)/+2CS<$5B%B8QHF0Q4J[UJT WI""-^!J2'3O81K(I3TGR3>[X\Y&BR8Q( M1&9<(K#XVI()B2))$GE\SZ%*<4TI/-S>TYVT\:(Q3YB121+]&<[YH([DS9*(I9]HE\=J"IIM&$]6N5ADL KC[!N_Y!UQ(#",5P1& M+C#.%;1S0?M<@9D+S',%G5S0.5?0S07=\.1&.DY3O1A982PM]<"I.!L*'1\[ M.*3H*XXV!"4+Y(0QCFUDX-ZMWUT[$/-[E#EHF4R/W66M^)SU@KCE58\D'4+ MM;5+9&B&B1X?+'3QX6,%9M($8S_>HXN\E54PJPG,_7PG8;(CJEAV$Y9_NT], MJX0Y36"3Z]Y+TO"K$Y"SOI7;(UG9*2(:9T1NB7*6/Y\VJ),R'A$TA84$&&Z0P>:>V'1NMSE#=5MC$+&QBUMI$ MW!6)>YX8V2^S)8Z?"9HD,:?B-@O]BRS"Q"G,Y63%D$?FSV'\?%"7BI )9DOD MB+O"_>DJK]5FT-1KD# +$F9#PAQ(F L)\R!A/B1L"@D+@& E4W8*4W;>0TW9 M@?0E),R"A-F0, <2YD+"/$B8#PF;0L("(%C)E]W"E]W:R=(B--RF3V&J[%2K M;6JG#"8?3Q5SO=EMF<5DG_DDC](/HO1^.<;.8XQ#DM%KEZ,MMJF=!J MK!P1 /5X:2SHVL_WIMJOE4H,+1*:OL*2_]7VAB: #[/JDVHZS$!I%BC-!J4Y MH#07E.:!TGQ0VA24%D#1RI8]6.J@OX?"*L\"RJ.0- N49H/2'%":"TKS0&D^ M*&T*2@N@:&6/_ES/H->^EAT_QI3@*/Q'N$[XLWHID%%1K!S51I/ZRS2V#>@R M U": TIS06D>*,T'I4U!:0$4+;.->K"@3ZYLO<%45(0,160A\%JKUU$0S1:+ M9CL\6:=K_)X2SI-5NKDD>$ZH#!#G%TG"]SMRV6"Q9'?\'U!+ P04 " "H MB&59!P+:54(# !]#0 &0 'AL+W=OSDY & M2-FZ4JDO8"?WG)Q[#H#RI=] MR[56!V[)=*;, 3OLS?$41J#NYC="[^R2)28),$DX0P(F?>O4/1FXG@%D$?<$ MEK*R1B:5,>L5^GB6O MDQEC"0-.?Y!8S?I6QT(Q3'!*U2U?7D"14,OP19S*[! 7 ^U= LP TLT1S95E:0ZQPV!-\B82)UFQFD7F3H74V MA)G;.%)"GR4:I\)S3 2ZQS0%Q"?HG##,(H(INF12B53?+R71%S3*;[()&8(@ M"VR\?R'Z< @*$RJ/-.YN-$2'!T?H !&&OL]X*C&+9<]66KFYOAT5*L]RE=X+ M*D

QM?\NVE#(B/*92J@ M@4ZEU'VG,T17!(\))>JI@;YQA:X!FX@8884JV)]7FA==*DCDKSI/H5]XJE;=V*A^"U,*Q,N4FT07$4\*FE0ZM M$[N3\;65MB>RM>2#,OG@(W1FL$^_]D2VYE>[]*O]?IW9WJI>9Z.^MR."9GUU M=TK!G??MR\YV7_IM?T/W=I#;7>G M9PWG(W1GH6)/ENV+;=VSRGSFOE^'%MRM72_/FAB_4U_J[O. Y.Z<)][>I@5_ M]9W>;6TJWX[Q._Z&=+LR&YL/DVLL=--)1&&B4(IO'%5 P M,0H !D !X;"]W;W)K&ULK59M;]LV$/XKA%8, M+5!'+Y:4.+,%)+&#]4/7(.[+AV$?&.DL$95(C:3B=+]^1TE6;9EU@RU?;)*Z MY[F[YT@>YULAOZH"0).GJN1JX11:UY>NJ]("*JK.1 T.[^P6[EE>:+/@ M)O.:YK &_:F^DSAS!Y:,5< 5$YQ(V"R<*_]R%1O[UN S@ZW:&Q.3R8,07\WD M7;9P/!,0E)!JPT#Q[Q%NH"P-$8;Q=\_I#"X-<'^\8[]M<\=<'JB"&U%^89DN M%LZ%0S+8T*;4]V+[._3Y1(8O%:5J?\FVM_4IUV ,@ MCQT0](!@# A_ )CV@.ES/80]('RNAZ@'M*F[7>ZM<$NJ:3*78DNDL48V,VC5 M;]&H%^-FGZRUQ*\,<3JYI4R2S[1L@(@-N66<\I31DKSC2LL&-X169$*N*M&8 MT3VD(N?L'\C0@*PUU6!,#/1##9*:VBOR>@F:LE*]0>2G]9*\?O6&O"*,DX^% M:!3EF9J[&F,W$;AI'^=U%V?P@SBGY+W@NE!DQ3/(+/CE:?SL!-Y%S0;A@IUP MU\%)PC749V3JO26!%X26>&Z>#Y_:TOE_WE?_V?N!&--A%TU;ONG/=]&2J;04 MJI&@R)]7#[B+\"[XRU;PCC*T4YK[\5+5-(6%@Q>@ OD(3O+K+W[L_693^R7) MEB])MGHALH.ZA$-=PE/LR1_8:')L%G@FL28*\$ANI*@(%WR2@6(YQQ.<$6PW M6RHSDN(1,>6RGL_.4]QZ,MWG,9E[54K@Z3>"&7-%T^[J.A3+)D/G(]H+S(\\ M?R3#L='$#\*+D1 6JUDT,EK9J&;G,[L4\2!%?%**CT+C';^3 I[2@O(<1MF_ M)1RT38+XN#9>-%+@V&9R[HT%L!CYH3^B6MFL@HNQ NY>#ZQ YNWC0^&6QL;5 M763#ZO"^N6K;^FC]VK^\\2WK2WP/=<^7[_3=8^H]E;D1KH0-NO+.SK%:LGN@ M=!,MZK8#/PB-_;P=%OBF VD,\/M&"+V;& ?#*S'Y%U!+ P04 " "HB&59 M!W2BT*8( "./P &0 'AL+W=O%\22SIW$,0!X^+P\N;YZ+\L]I16J,O^RRO;F>[NCY'9$L?:/W[X5/)/LW/+.MT3_,J M+7)4TLWM[ Y?Q[K6!)P0_TSI<_7B;]3W,ZUI$G&Z>WL M_EP\1[2[(;/A6Q59=?H7/7=8;896QZHN]ETP:\$^S=O_DR]=1[P(8#QP .D" M"!]@?"- [P+TJ0%&%V!,#3"[ '-J@-4%6%,#["[ GMI+3A?@3+V"VP6XI^'0 MZG<2WTOJ9'%3%L^H;-",K?GC-().T4SS-&\&^T-=LE]3%E5VA)%^CY2[)M[1" M[SQ:)VEV@OS^X*%W/_R(?D!ICG[;%<>*(:N;>>"@\G-YX*#QZ7<_'__>]#P:"?IXT^HE/ M_]:D^749H[NZ+M/'8YT\9A35!?J4E&Q:O$>_L!VJV*#?DB_H7Y^++$-L47Y. MRO6_H1G07L> K]-L=-?5(5G1VQF;DA4MG^AL\?>_84O["1I^*LD\E62^2K) M)5FHDBQ2218K(AL,<.,\P T9^^*>;M,\3_,M2R2R)%]1:.RV%-:)HLFIGA8& ML6W7O)D_O1R5 $PSV$0P:%K;XE&V@1;F60M3JD6[Q39[Z3%GZ6R6_I=MU5N6QK)=-V.[,F6;[OI8 M-F*Q_1L=:)D6T&YYWU[&?-&\*V)QM[H40<3@[M,3,;9C<3J)&&PZO$HB2+=M M3B(18_$\D;0#+YUWBL@&6EMGK2VIUG?[XIC7[!"QRI*J2C:2MFG8 M))TMH<>,9M<;R Q@,"^SB"'\//-%S)7I:)S, ,BRN&4BA)ATKDF1M/N51 160# 9VS@(Y4P/:LM!JG"-)M;LF/1 PV,'=G,0#27BP8 M RW M2L12(^<5B61'+,\D 9"82@(@,9<$0&(R"8" ;!) B>FDO-\NGG)O8:?AWD_# M4I%FSMU]MBO+J(6&;O$_<1R^U/90RD,V*&V:_%: 28E(9C7"D 9.O]D"D#I MNI#' B#,/ST$0!CK0L8C[L'H'C] C_X-T?IPG& M(>$X)))WR:4"JF(;"MA;F43J'[W"4NB(A\_P3'XU!E# :@RA#.$,"J#$U1@" M":LQ )68WG772ST6QAYI#?RB-S(&W<5B.A:89O?$I< 2DR8/ @E)$P^A'+Y M^H, 0HD94PC"A(PIFG27\5C+AB+T!AZ1&WC+I-JA(&-A$5UO80M!3G'IN4HI MFZ>4S5?*%BAE"Y6R14K98E5LPT'<^Y/$^$X6 I$:H1$0#9_!/= *H=/7WP(9I@&OV\" M)9/\G@F49YI\Q>2T1L4C7$,%>K^2R*LY $@+-2O M^2!*> H&H(1Z1ZCM!E]3%\E[\N*9]Q;F'>G-.R(W[Y28!T1TM,3R5@@DU+<" M(+' %0 !%:X02BQQ!;F$&E=Y)UXL^5L429+>)R1RGW#$2P!J& E?Z0J @%)7 M"*4+WA_()12[ BBQVA4 B>6N\MZY6,NW\/Y([_T1N??W"EM!=-"NB(:%=5J$ M6:XP:T40QD(E"8 RL3!K@689)O\" H2R3=Z-E_?=Q4J_A0.H]PZ@+G< QWV% MCL :*LK[=TL()JS#$$A(HWP Q1M3 <0DY% A@.*WW6FW%\O;U';^_,6[N7M: M;D\O=E=L&K&ML'WC\/SM^>7QN],KT]SW]_@ZQ,#W$;Z.VU?#>_KV3?6/2;EM MDJJ,;MBEM \V&\-E^_)W^Z$N#J&ULM5EK;]LV%/TKA%<,+=!$HM[*' .)I:X%5K1HVNTS M(].6$$GT1-KI@/WX48](%G6E.*OZQ=;CW'-Y+BGR2%P^LN*!QY0*]#U+N.EI$D7ZR6U;7/ MQ6K)#B)-+V[P56A4 17BSX0^\I-C5$JY9^RA//FPN5[H98MH2B-1 M4A#Y=Z1KFJ8EDVS'WPWIHLU9!IX>/[&_J\1+,?>$TS5+_THV(KY>> NTH5MR M2,47]OB>-H+LDB]B*:]^T6.#U1> HPDP MU !K),!L LQS,UA-@'5N!KL)J*1KM?:J< $19+4LV",J2K1D*P^JZE?1LEY) M7@Z4.U'(NXF,$ZN;*#IDAY0(ND&?1$P+M&:9'')Q.1:.%'W((Y91]/H/QOD; M=(%N,G;(!4=?:)02SI-M(@.W!@UZ_>H%06?&9(WS=0(A( M]>BS;3T4+M":\!AMY52$8KK94;#K:W(+)B]GR2N^)Q&]7L@QR6EQI(O5K[]@ M1_\-JON<9,&<9.%,9+T>LMH>LJ;890\=:7Z RU]'.E5DN:8<5]@V/<==:L?3 MP@(P"_N^TX<%0YAE>::G]V$A --]S_-:6$^FWSL@6SLH5S ML?5[T^AZT_B9)K!AGZN?YF0+9F4+YV+K]U/GU?&DT9RT@DVHLF;JZN0R1+F& MNEY"5+YKJ5/+$&7X>,0%XL[MXFF[>XX/;"CZ"_]@'@5 JE4,(!#V5:50.F=D M><2=X<73CO5X\;7K/='\8\)ZJ M]3L#$T 8U=U#&&O$V^/.Y>)IF_LRTX@$,ME3! ,A1!4-$^MACV[E< M/&US1]T>AMSEP.T!*%M]\0P@*NGB!ETZA&'7'?-ZG9W%TW[VARW/S9$D*;E/ MZ<66%1?ELX ">B_0'8T.12*2D;ENLE4O7ESG9 MF90OG8NM_%.R\O*'_3!-D M3+XIO+2?9F4+9F4+YV+K]U/WZF%,OWJ\\)VK83O]7*6:HN4W^?J3;7NUW<6YJ?8NE.NW^&J-@>L!O@KK/9J.OMXR^DB* M79)SE-*M3*5?NG)Z+.I=F/I$L'VUS7#/A&!9=1A3LJ%%"9#WMXR)IY,R0;L7 MMOH/4$L#!!0 ( *B(95F_AY64\@, ,4 9 >&PO=V]R:W-H965T M5R18R*F]X ;F^LN$BHTH/Q8,K"P%T725EJ4L\+W(SRG)G/JW.+<5\ MRDN5LAR6 LDRRZCX\0Y2OI\YV'DZ\9D];)4YX'S\A/Z^*EX7@Y)2*I[5R9I!QO+#/WVLA3A*P,$S":1.("]-\.L$ORKT MP*PJZXXJ.I\*OD?"1<H[^KK.U"4I?*-CONZND.O7[U!KQ#+T98;."X@;YW@@1CP26]$5_^ATD.AU7Z7XWW=6Z-.*01AQ2X?G_ M(\X(+5.:JZX*Z.]/.AQ]5)#)?VRE'K #.[9Y/&]E01.8.?KYDR!VX,Q__@E' MWB^VP@<"Z\C@-S+X?>CS+US1%!7'O0!/*M@*/Z!%%9I91G9S$@8Q":?N[K@D M6QC&)&[".F2#AFS02_832'FK5X>DS,J4*ECKAUIKDC!Z6#8T>9IQH=B_U0D; M_\,-PB-B;PF)_3$Y*< 6A\4@'E*&@< Z,HP; M&<8#S/KXK.'PF$Q(=-*7EK!XXGG$WIB3AN+D910EWZ@]%6!CV MQZ80,!-:I M%GOM2]R[8F?6X ,I,11:5XHC/X,'?5G5<)WU,\)A?-*G]C#?M_5]J!;GJX1RS3I'1B>=NR2FB>ZY65%D7*:)Z O5E[02Z> MH8'0NB6W+@='UVS60?W/4&A=*5H'A'N=Q>7-&EML0!3ATV:UA?G1,_84MTX% M]UN5]Z7(F2H%C-"&/9H#^0+.O9@73]A :%T%6B.$)]?LW4$]TE!HW6_YUB21 M7N=Q<>_6<,%%MVMQSI7A6'6Z!KD&8 'U]P[EZ&IA]H&;?;_X?4$L#!!0 ( *B( M95EK)0&PO=V]R:W-H965T<\ASKZ_B.]U3]IEO 03ZFF>$SXRM$,7$-'F\A1SS:UH D4_6 ME.58R"G;F+Q@@),2E&>F8UD#,\;34H(8K&?&C3V)[!)0[O@K MA3T_&"-UE0=*/ZO)73(S+'4BR" 6B@++CT=80)8I)GF.+S6IT6@JX.'XB3TJ M+R\O\X Y+&CV=YJ([0V6)\A34GWBK[41!P#[)8!3 YQC@/<"P*T![KD*7@WPSE7P:X!_+F!0 P:E M]Y59I=,!%G@^972/F-HMV=2@#%>)E@:G1&762C#Y-)4X,5\RF:1,?$.8)"C\ MLDL+F3;B"MW+I/X%W6/&L H]>AN P&G&W\G5CZL O7W]#KU&*4%_;NF.2S"? MFD*>1[&:<:U]6VD[+VB[Z#TE8LM12!)(.O!!/W[<@S>E#XT9SI,9MTXOX0J* M:^1:5\BQ'*_C/(OSX6[7=7Y,/?PQ]:@?'D LX787O.6EVR266_*Y_Y-85VB9 M82+:^84^_2ZWHSL!.?^G*W$J;J^;6U7;"2]P##-#EE,.[!&,^9M7]L#ZM2MJ M.LD"G62A3K)($UDKVEX3;:^/O5U&X+F,$!!=X:W(!B69>O<]SIVAZ\FT>SR, M6Z_DI7$[2S+4*1F=2KJ./QXWDBVG_<9IO]?I *1TG.+JO2S=QCEE(OVW7.CR MNJ+S#T\QL*PCJ_V3H_JCXTW!*9/MV,>[PE,J>^0=[XIZ+_F=R3IH+!ST6KB* M,2' T$U19"DF,?#2R#_$5BXN:%[LA!PTQ:K+U%Z!2^N33K) )UFHDRS21-8* M^; )^? GOHV&.J.MDRS021;J)(LTD;6B/6JB/=+Y-AJ=U+7Q2<%:]"I>&K9S M%$.=BM&IHFT=UNZ6S^/&Y['.0HKNJ5#?OQ@2=$?02IXYC:$K(KVREW[A=)(% M.LE"G621)K)6(MC6\\](ZR<6V)I<4\"UL@5:V4*M;)$NMG;0#WH'MLXZ6[/U M_Y>YZ->\.'KG:(9:-:,.S8%W4FO-@Z9-#FQ3MMN!/0FK!MTS?=4O?(_9)B4<9;"64M:U:K"QJ@57300MRI;1 Q6" MYN5P"S@!IC;(YVM*Q=-$"32-T/E_4$L#!!0 ( *B(95D?''G=+@0 +D4 M 9 >&PO=V]R:W-H965T2> 6D@21T'[8:S73;AZH/)C$0;6)3V\#L_OK:3LB2"REH\P*)<[[O'/L[ M/KY,3X1^83N$.'C+,\QFVH[S_4376;Q#.62/9(^P^+(A-(=$EW>ZX;-#G MTSWS(G*].0 &7Q9XI.[.(9R*ZL"?DB M7SXF,\V0$:$,Q5Q20/%W1$N499))Q/%O2:I5/B7P\OG,'JG.B\ZL(4-+DOV5 M)GPWTT8:2- &'C+^0DZ_H;)#KN2+2<;4+SB5MH8&X@/C)"_!(H(\Q<4_?"L' MX@(@>+H!5@FPF@#G"L N ?:M'IP2X-SJP2T![JT KP1XMP+\$N KL8K15=($ MD,/YE)(3H-):L,D'I:]""T52+%/QE5/Q-14X/G]!1X0/"&PHR<&28$Y%N%7Q.-Y^L[1.VAS&:::)X,T2/2)O__)/I&;]V M"3TD63 D63@D630DV6H@LEJZ.%6Z.'WL]8(6EP6MJ&=Q6<\>Q!I:&-$BI[YU MUIQ%X]G<.->43#!/;J4?+5]HFV:7D.7?K?W"G.; MTW!0IU&'4]OT_$8VK#IC(@L%5W8 RH@EB<2*O6ZI[M2=TN-=H7 MYF1I=K0'YB0L;M&^TQ>7>I\@W::8@0QMA"OCT1=I1(M[LN*%D[VZIED3+DXI MZG&'8(*H-!#?-X3P\XMT4-U6SO\#4$L#!!0 ( *B(95G"/>@/U , $(7 M 9 >&PO=V]R:W-H965T3$62J57[BNG"TAI?*.)?!ANY M_,=BM9PX0P?%,*>K1-WQS7LH!0T,WHPGLOB+-N6SGH-F*ZEX6@[6#%*6;7_I M0UF(G0&$'!A R@&DX+U]4<'RABH:C07?(&&>UFCFH)!:C-;D6&:^RE0)?9?I M<2JZ@S5D*T!SP5-TS3,E=)VD)J&6Z+IX/0B)SM!?#[FN(\3HR8#+)-$7S,=G MV0+=@BC:))L!^GB?L 4UA9?H]0THRA+Y!KU"+$.?EGPE:1;+L:NT L/#G95L MK[9LR0&V4\C/D>_U$/%('WV>WJ#7K]X\A7%U :HJD*H*I,#U[57HM8KIU87X MQ%+S')^CJ;XEYW3;9E_^UMCH@X)4?FT2N"72;R9B/'@A%.UQAKTS0W-?DI5:QT\PJ(0/3J73!D>0&50R M@Q?OM&"OTP+?#\+F1@LK(N&SB/3,=<;C)D)V9!^E^M_E4EJJ-:Q(#G^S&P;: M"@?<8*76L4U&E?#1J;AA= 29V*M3UGMQ/Y20NX; (W\0>,V.P#N1CX_FB19H MC+X#%;:2U9&,K5'X"TP1'#:%G5O7=JES&ONGX@MLG3)T55K/ W#;1*"#,?K[ MQO"\<'0@*G"=S=B:B<\SAAVZW1AUM.*V;#VV,4*+,:S8X/!EC6.._ MJ])Z2H#;Y@0=C#'<,P;IXY <\$6=TMB:CL_SA1VZU1>DSEC2EK'']L7PL"_L MW#IV"ZDCG>!3\06QS@"Z*MU9J;=-"W[>%R7DT\# PV9;D#JER?.6TS9;M$"W MVZ).6/*[E]HCBRV.L=8F=:"3DUEMDV,LMTD]*2 OO^ F^RMN?WA@$D7JB";' M6W';H9N+B)KJY^[LB)K=Y7^H6+!,H@3F&MD[#_77$ML-V^V)XGFQ27K/E>)I M<;@$&H,P#^C[<\[5XXG9=ZVVS:,?4$L#!!0 ( *B(95FS'$H3E@, (D0 M 9 >&PO=V]R:W-H965TJPNS+/93T/+=R ][ &\?&P8O+.;E6RH@+""TH0@]W<>N/>I:ZC"!KQJ8 SO[I&*I4-I9_5 MS;ML;CDJ(BAA*Y0$EA\G6$)9*B49Q[^-J-7NJ8C7UQ?UMSIYF%2[# BQFC9\046JJI M"UU]S9;U*H@Z*&O!Y--"\L3B 4Y CH!VC%9H28E@LG5H1>H(.A#3H\B]C"3G*"499 9^,LR/!_BV+%!;)>]2I7MO4' -AUOD.S?( M<[S $,_RZ73?E,[_VSU]]NZ=8OCMD?&UGC]\9&[DF5!.5) ]6@'3GD6V@/[< ME,4>*Q>X0>GC01H"9.A#42D:T[>;TV8Y1,R=77][(#?V>$RP-*">(XYY??(OR L\))SV_,,#\(' =LU]$ M;9+18)(KS 0!9LIQD/BC1VQ,L61,L70DL4[UX[;Z\<]B&/&8W1Q3+!E3+!U) MK---U_DZ9#C/MHR&>OV#/_4\W^UYA@$6ND'<>Q=)###I&;[;=PT#SIU.@FG_ M-<.^&JWD*+37,RU'6WHDHGYE;E?;N?F-GA9[Z_?NW=(UK"=JSM:CW%?Y>DA_ MC]F^(!R5L)-;.;=3Z7&LGGOK&T$/>K#;4"'G-'V9 \Z *8!\OJ-47&[4!NU_ M'Q;_ 5!+ P04 " "HB&59>;#ZW6<" #6S71EII"T5&@_ U#)X0#RX MR6UC+;&#[;:#7\^UDV7=E@T>>(E][7N.S[GQ=;*3ZD:7 (;J*R_T_;%7,RYHFKBU*Y4F M!V=9;/-=PE<..[TW)];)4LH;&WPHIM2W@J""W%@&AL,6,J@J2X0R?G:5&8[)./(-FK"0O[X1?M,+#9X0OH#DAD7],0C^,!^#9R_ 9Y @/'#QZ M"/>PA'T=P[Z.H>.+_E+'.>1R+;B[HM_/E]I5YL>0O98O'N:SS7NF&Y;#E&)W M:E!;H.GK5\'8?S=D]C^1/; >]=:CE]C3[J6R!8P>T[\DV'9^^'2?>=E_[ MTZ319#3IDQYHBGM-\8N:[B_?D*SXR8E![,?!(UT#6<$DCA\)\_9ZS[Y['YE: MG(TI4^Y:T@9&-:\>E--A=;EKB\PO*)N#^2DIS%]@.[Q_T] ]0 M2P,$% @ J(AE68?&0#.+! %Q@ !D !X;"]W;W)K&ULM5EK;^(X%/TK5G:T:J6AB9V00!>0.E2CJ=1=5=-Y:+7:#R8Q MD)TD9FT#P_[ZM4.:!SBF5.%+R>/>DW.O[7N/W=&6LA]\28@ /],DXV-K*<3J MUK9YN"0IYC=T13+Y9DY9BH6\90N;KQC!4>Z4)C9R'-].<9Q9DU'^[(E-1G0M MDC@C3PSP=9IBMOM $KH=6]!Z>? Y7BR%>F!/1BN\(,]$?%T],7EGERA1G)*, MQS0#C,S'UAV\G:) .>06WV*RY;5KH$*94?I#W3Q$8\M1C$A"0J$@L/S9D"E) M$H4D>?Q;@%KE-Y5C_?H%_6,>O QFACF9TN1['(GEV!I8(")SO$[$9[K]1(J M^@HOI G/_X)M8>M8(%QS0=/"63)(XVS_BW\6B:@Y(*_% 14.Z+4.;N'@YH'N MF>5AW6.!)R-&MX I:XFF+O+<@$SA;Q+"'@CG,B M^'OP!Q$],,6,[>)L ;[A9$T G8,C2W!U3P2.$WX->N#K\SVX>G<-WH$X U^6 M=,UQ%O&1+21']24[+/A\V/-!+7R>R>H&N,Y[@!SD:=RG9O=[$DIWF+N[37=; M9J9,#RK3@W(\MP7O8YS%@O0>Y52+-!GXZU':@P=!4OZW+M8]N*<'5ROTEJ]P M2,:67(*7!-Z),IY4(7X-[+S[U4Q=A,/#@8 M!"-[4V=^RJI!R2LI>49*=V&X3M<)%G)D[E+*1/P?5I5!1W./U*\1Z+F>%_@' M/'5F"$&D)]HOB?:-1+]0@1.Y+%XFCW95](\^'7@0'O [-AKZ05_/SB_9^49V MM4F-BP*0$>U8^QJ*_4.*QT;# +90#$J*P7D404:%;#RS?V0O (("?&+XC?#G M+L..P!J9&)29&%RR' VZS$-'8(T\#,L\#"\[(X;'%ABI^V11IAS1ZHKM&;0-84!+SEI"_2NXSD!5W\2S/BU-GHSG@=VRA4$(*696'+@@PCO=!UF MV@52,^I*/,"WJ0>H$08.] Y[RDFS)JU*0,#N% 34:H/ /:P:6CO']UO$#JQ$ M!.Q 1108OEE&:*R&7N"U,*R$!#0KB2>9R$R ) [E+J^%GQ'A[+7<$5HSWDJ5 MP."B=:U35=(56C,7E2Z!QG;_AKIFQH-%.=*&^A;79ER5SH!FH=%:N8[5 72/ M]CVGK)I;TDI%(+.*.*=N%5"->J1AJC=#+3L?5/5^9.RGKZM:!48]38=E56/B MM^PJ4&UO;VYY:J&FDE24'S7-*0N)EEZWN_A+;.-1U8J1>]$##6.C/SL7':$U M*G)5JU=&0^:7A=N0I.EZMC$^CZ!^SLVJFM.C+_';-% MG'&0D+GTY,RH$3?/+)<$18&ULK551;]HP$/XK5E9-G=012-*N91 )"-OZT*HJZO8P[<$D M!UAU[,PVI-NOW]D)&;0IJK:^)/;EON_SW3EW@U*J>[T",.0AYT(/O94Q1=_W M=;J"G.J.+$#@EX54.36X54M?%PIHYD Y]X-N]\S/*1->/'"V&Q4/Y-IP)N!& M$;W.%#0)8R&WI=>R#@D!K+0/&U@0EP;HGP&#]K3J^1 MM,#=]9;]DXL=8YE3#1/)O[',K(;>N4R_ )U/*>6+Y5XA!H:#Y0LB;+>R&87+OL.C?EBPMZ3F5'XE2'.Q)?"4+%D$"7+%.,=BZX%O\"26ST]K MU7&E&CRC&I(K*RZ6*FE)%A]AW?U]JJT-H+I5AOZGKPO" XT1#6VTJV@M':V?))NYV/@S\ MS6[*VWS.]WV2ISY!)]SWF1[VJ>+V=UI8#FKI9H&ULK59=;YLP%/TK%JNF5NK*-W1= M@I0FZ]:'35'3;@_3'ARX"5:-S6R3=/OULX&@-*'I%.TEV.:>XW,.<)W!FHM' MF0,H]%10)H=6KE1Y9=LRS:' \H*7P/2=!1<%5GHJEK8L!>"L!A74]APGL@M, MF)4,ZK6I2 :\4I0PF HDJZ+ XO6JZU6;@CRUR9!3L9E'@),U /Y53H MF=VQ9*0 )@EG2,!B:(W\2C5/)+5.8+ MHZ_ZW7F'/CZ5.FG(T*C@0I$_N$[=K#()B#!T4ZE* )J"(#R3Z'0""A,JSS3V M839!IR=GZ,34W>>\DIAEMN.M&G/>"N!F4%\AWSI'G>$$/?'P8 M/H%4P]T:[C^'VSJF+BNOR\JK^?P7^#YQGJT)I4B[07O!H0F1*>72A/)C-)=* MZ%?T9Y_I9I>@?Q?SV5[)$JOG$CYT-?!/^)[%D@?A>(?X@] M,8\%G0HPW8*P)5*Y $ %9RJ79WW.&[JHIC/]995$@3.P5]N&#FYYI*&@,Q2\ M9BCLT]V@PBW=7AA&.\(/4A\I/.R$AZ\)C_J$A_O"@SC>$7Z0^DCA42<\>DUX MW"<\VA/NQO[ECO"#U$<*CSOA\4'A]UQAJOO;I@OTMK=X[WV/ ]?=<;%?]#Z* MPZZH46=OM7ASO'[!8DF81!06&N9&ULK55M;],P$/XK5IC0D*!Y[6 EC;0V M12 Q-*T:?$!\<)-K8\VQ@^VVX]_CES2T6U8FV)?&/M_S/+X[]R[=)VF ^^L=^P<;NXYE@25,.?U&2E6-O7<>*F&)UU1=\^U':.,9 M&KZ"4VE_T=;Y#F,/%6NI>-V"]0UJPMP7W[5YV -HGGY U *B^X#D$4#< N*G M*B0M('FJPK %V-!]%[M-7(X5SE+!MT@8;\UF%C;[%JWS19AY)W,E]"G1.)5] M!IUEB=Z@+U@(;(J&3G-0F%#Y2EMOYCDZ/7F%3A!AZ))0JHLK4U]I98/WBU9E MXE2B1U1B=,F9JB2:L1+*'GQ^'']^!._KB+NPHUW8D^@HX1R: 8J#UR@*HJ3G M/M.GP^.^]O)%>!:\[\ONR:R@SHD71V28^RN#@CN] R0T%<# M!S^W<#, -EDR&*;^9C^U#WWBP?FA3_[0)XP&X:'3["].+D)_K_/4(%:VY4M4 M\#53[@%VUFZJ7-AF>L\^"4?3L,>>ZRGDAL8?>C?"+K%8$281A:66"@9O=6,4 M;BRXC>*-[7L+KG07M&ULK55M M3]LP$/XK5H8FD 9Y:\K+VDBT# T))$3']F':!S>Y-!:.G=E."_]^9Z?-2@G5 M/NQ+XG/N>>Z>\_DR6DGUI$L 0YXK+O38*XVI+WQ?9R545)_(&@1^*:2JJ$%3 M+7Q=*Z"Y U74"2\=N;U[E8YD8S@3<*^(;JJ*JI<)<+D:>Z&WV7A@ MB]+8#3\=U70!,S"/];U"R^]8Y?AQ32Q_L[A.X.5WEH3JV0N MY9,U;O*Q%]B$@$-F+ /%UQ*FP+DEPC1^KSF]+J0%;J\W[-=..VJ94PU3R7^P MW)1C[\PC.12TX>9!KK["6H]+,)-?D"T!D2[@,$[@'@-B)W0-C,GZXH:FHZ47!%EO9'-+EQM'!K5,&%/<684 M?F6(,^DM8 TT.2:SIJXYX/D8RLF4ZI)R5VD&G=K"//75]4],7VT8: M.R/C#9ZJ;1%3 JFP%HUR/49D0;@M#>&,SAEGAD%O][3QABZ>G4C+- R&PV3D M+[>H51N"/$W[KO%:B%&X.:9+(1IKTIW6XW:2_=@-G9 MG^ $;@?F7YIV?-]1M6!"XR$52!FJAV)K6%D[:;*7!J<46Y9XE\$E'7 M[X649F/8 -U_*?T#4$L#!!0 ( *B(95DYFTZ:8P( "8& 9 >&PO M=V]R:W-H965T=LX@4V(2PP-9:!T6N/,RP* M2T1I_&HXO?:3%G@^/K%_=-I)RYIIG,GBB6.#2IX<*>XLHHVN6$,\DCD@?Z'3PYO9C!=(^*C@^6 M:&N BRVX$/B*J@0FLK\CYURG6ASB6\ MDLL*JQY$P5L(@S#N@,]NP^>8$KSOX-$EW"=76FO"UIK0\44WK8$?T[4VBLKM M9Y>BFB+NIK!7<*0KEN+$HSNF4>W12UZ_Z@^##UWZ_A/9A=JH51O=8D_:8V7- ML:JV I7 ,86P-T1F>H^V]OT,3@DQ%!*87(-80P9.^HN&VXS10U3OV:"80?/ MA0-QZT#\;PYDI\)65-A=DFN^?DUH^^4^"7K!/=7N_EQ/=]@@;,/J=/VS6VP[ MZ!>FMEQHLG]#N*!W3RU$U5VIGAA9N8N]EH;:A!OFU,A1V0#:WTAI3A/;*]I? M0_(;4$L#!!0 ( *B(95E'--(AS@( .\' 9 >&PO=V]R:W-H965T M _B<;,OXLR@!)'JI*RJF3BEE,W%= ML2RAQN**-4#5DX+Q&DLUY6M7-!SPR@35E1MX7NS6F% GS\S:C.<9:V5%*,PX M$FU=8_YZ Q7;3AW?>5MX(.M2Z@4WSQJ\ACG(IV;&U]>3K:NIXVA%4L)1: JO;!CY!56DEY>-7+^H, M3!VX.WY3_VR25\DLL(!/K/I.5K*<.F,'K:# ;24?V/8+] E%6F_)*F&N:-OM MC4,'+5LA6=T'*P[E9H> MF%1-M#)'J/XJ<\G54Z+B9'X'*B6!+M$]H:1N:W1-:8LK9-;1#+^J+R %.K\% MB4DE+M 9(A0]EJP5F*Y$YDIE0DNYRQYXTP&# \ Y-%=HY'U @1>$Z&E^B\[/ M+OZ6<54.0R+!D$A@=$?'$_EQO1"2JV_]TV:MDPCM$OH 3$2#ES!UU!\N@&_ MR=^_\V/OXQ&#H\'@Z)AZ;O(]YZ"/"J%K)$L.@&I&92DN;&8[N=C(Z<.UR8-Q M'&7NQF(B'$R$ITQ$-E87%>VP_"!*1W98-,"B4[#8!HLL,#\-[;!X@,6G8(D- M%EM@09C:8A3]R*0J!75?&2I3$IJ^)-@\I'L>HCB)?+L)W_M3HKRC-NY B(DJ M.RIS$-):Y6"P 1H< !D !X;"]W M;W)K&ULQ9U=D]HX&H7_BHJ=VDVJDN!/H'N[J4I: MLIRMS4Y7>C)[L;47;E"#*V SMNF/K?SXE8U!"(S /2?%30)NZ7EE=)#D]]CB MZBG-ON=3(0KR/)\E^75G6A2+RVXW'TW%/,H_I N1R+\\I-D\*N3;;-+-%YF( MQE6E^:SK6%:O.X_BI#.\JH[=9L.K=%G,XD3<9B1?SN=1]O))S-*GZX[=61_X M&D^F17F@.[Q:1!-Q)XIOB]M,ONMN*.-X+I(\3A.2B8?KSD?[,O2]LD)5XO=8 M/.5;KTEY*O=I^KU\\WE\W;'*%HF9&!4E(I+_/8H;,9N5)-F./VIH9Q.SK+C] M>DT/JI.7)W,?Y>(FG?T['A?3Z\Z@0\;B(5K.BJ_I4RCJ$_)+WBB=Y=6_Y*DN M:W7(:)D7Z;RN+%LPCY/5_]%S_4%L5;"] Q66L&K*WB[%?P# M%?RZ@G]JA%Y=H;=3P3D4H5]7Z)\:85!7&%2]N^J.JB]I5$3#JRQ](EE96M+* M%Y4@JMJR"^.DU.Y=D,;PKTM'W:3H;BRS_&V%_+./BA43)F%1_>%_* M8DQNTKG\KN11I;;WY%]1ED6EY,@;*HHHGN5OY=%O=Y2\^>4MR:=1)G(2)^2W M:;K,)2M_1W[1WE]U"]GTL@'=4=U,MFJF9S<]:?VR?'"/S',OE ;.<=<2S':VC/S0G5K4%5W6FH3D^I?E%5MYL^ M37/U.['X0%SK8..#TZN[37WQYZ*'KXZN]:2[^0:X%<\]Q"OU^O[3OM _2I4G M$R$'ZH+%?_V+WK+\WZ0H)HT@80\(")(PC82$(IFG5VVC5,]%76LU) M]"@'W>A^)HA M'& ?M[6%C,A/B1B"(FJ:\3>:\8V:^5WD19Q,R$)D<3JN=/(BHJQ9)D946YD@ M810)8TA8@(1QEK;6BJ.M*;1)84926X4A810) M8RM8;WM8L%RWOS,2[9>R![ZS,WKP_5)^S_.]G3&FH93E]ZQ-*:UG^YN>[9\R MX61BLY-0;V#NZV2]C M2ZDVRV:PD\'$QL"QK1RS[I6ROW[<. MC#(7&[E<&.7R<5E,TRS^GQAO289$\W0I%[:9*%-P<@73)!LCMZULD#"*A+&+ M_>_HP._O]DZ C,E/BQF"8FJZL2V5O;*.KSQ(NBA7&TW+HD_F^FT5 J51*(U! M:0&4QJ&T$$73-;>5,;7/G#"J&X 2+9)&H30&I050&H?20A1-%ZVC1.N\ZA*- MB.?RMSZD#BD?G* M0',\,HY>&E-0J(;ITE2Y<=N<'/\J\B*+1X549EXM"Y=2C2J-0&H/2 BB-0VDABJ:+5J7M[=?E[=LL M"J'Y?"B-0FFLIFTO"@>6L[\H1 ;E]GY6OR%HB JJZTB9!/81EP"X*(1Z!E : MA=(8E!9 :?Q(?Z\7A?WUHK!W>$T(:I>N3.5#V&8CXE9DU?V=R4C4^MQ:):Z2 MA]\.KA*AG@241J$T!J4%4!J'TD(439>C\CGLBW.O$J&.")1&H30&I050&H?2 M0A1-O]%5>2S."1[+B7=WF%%MY0>E42B-U;3MY:![L;<:K$MI2;T]#XTWE&KP M7AM*^W!P;4_JD&Z))55X9A3UZ>N M_=0\_ M5H!JAZXUY5 X1QR*U8W$Q30JR%,\FY%'*3ZR7,@A4L[DDXG(*OU)*8[DF!A- M1+,(H28%E$:A- :E!5 :KVFV=DOI[E7,SS R'&5D..;$-KN[O5U-MHT987/M MUCJ"FA-0&H/2 BB-0VDABJ8K3AD4SN#<*T"HC0&E42B-06D!E,:AM!!%TT6K M; S'_+P&(F4(]2F@- JEL9JF/3.SE]P-H#'Y23%#5$Q]VP7E*[BO\Q5>D3(T M1VJK)BB-0FD,2@N@-'ZDOT^YA135(%V2R@MQS5[(ESB)Y\LY^4'0R4-SX-8* MA5HD4!J#T@(HC4-I(8JFBU59+JYSYJ6C"W5BH#0*I3$H+8#2.)06HFBZ:+_AE^CY9TW<4 ,%2J-0&H/2 BB-0VDABJ:+51DH[KF?%7&AK@N41J$T!J4% M4!J'TD(431>MF0T749:4<%]?L MN/PV%<2Q;&>]]>SGI)15.2??SJ+&6TS-P-;2@IHP4!J#T@(HC4-I(8JFBU"9 M,.ZY31@7:L) :11*8U!: *5Q*"U$T731*A/&/6+"5&)L2I]'XW&5.X]FZ\VX MU8:Q1W;L1%GT9;/UZ@Q MJ'4"I5$HC4%I 93&C_2D;1E$]C-\$D_Y))[Y4875)89C$S9?S-(7(>HTX.UZ MH\E#5QIF;FOA0>T/*(U!:0&4QJ&T$$73M:CL#^_@Y@F41J$T5M.V+XD\U]_]X0FH)W)*R! 54I>. MLCH\\Y,%:^FH#9Y+[<1YOBP-NJ/R@=H84!JM:=K>ZKMWV#%HR !*XU!:B*+I M.E/NA&=V)WY]>)#7#_I5Z^INLV9A0>T)*(T>.=->?5Z-@Q#4BX#2.)06HFBZ MW)1KX9E=B\VEPR*+Y3"6/JQVG'RW]2!2H^R@U@641FN:?I/'AX&_.Z)!/0DH MC4-I(8JF2TQY$IYYYZK/ZSE2BFN4SN67OM[5M)AFZ7(R)6)]-;LZO/G9A(6\ MFCTZL4+M""B-0FD,2@N@-%[3MK]Q_L7N^NUGF R>,AD\L\EP4NZ$_"#UC=.- M6H,^Z0&E42B-06D!E,:AM!!%TW_03ED4OG7F+(H/]36@- JE,2@M@-(XE!:B M:+IHE=?A'_$ZRF>+Q2R>Q&4*I5XHDB*5LWM29/']LFA<,YJIK94(=3]JVLZ: MT=IYJ)M!@P90&H?20A1-EYAR.GR TU'.UJN[I1OE!O4\H#0*I3$H+8#2.)06 MHFBZ*I7GX9_;\_"AG@>41J$T!J4%4!J'TD(431>M\CQ\L^?QVMD::GA :;2F M[EDF13DX;ATE MF7@H-XN^_.ATNGO'F7T9V W'N7T95L>["C^\6D03\27*)G&2DYEXD*&L#WW9 MQ5D\F6[>%.E"=GR'W*=%D :8D3E>A>*);OXB.5!7^?-I MR-._8)._:QG 7W%!H]Q81A %ZQ MP*,!HQO U-O2F[I(QR:UEC1!K-(X$4P^#:2=&$T$]5^7-)P1QG\##S]7@7@' M.)Z!],&U&J$9&--(3AN.TX&_!I,E9J3I46$'OB>J@8-;E27E\O*>"!R$_ NX M ";@R@,'00R>XT#PJTK#/TNZXM*1;+S8N1^80O*JJ$T_9[O+V- !MC[X1F.Q MY. AGI%9@_U8;P^1QH$I![H8;;0=[3ND]3@A20?8UA5 %G+ \^0>7%[LC$CV MTQ2JWO$]\:5CF#JVCW6\@V 7$\9.>[(/]/1]);B0^0CBQ3;+39G)G#C-3M3> M=,,3[).A(38'_ 0BMT9T#5VXAZ3MM"52KT#J:9'&:L:% M)Q#UZD0]M >D[;(ED%< >?H<93O'J6O):UA+EK?'U?129<'MQ-LOXNUKXWTA M7"T15=G(6R*UA[P1%*QE\]'!]^MQ(7<_>&T8+9,"K5(%6%K,ZJY.LUW]2@*G MZPE/P^,3E?=3A?6L_AZK/IBVL!7) [4E[$>J[60B;]>$2:T*MAL'>&2!3QJQ MX#GKV;F\[?*CDA^U*&E*-"2$9;E522[50^.(9'UXE43W>YW^_K36A](6M10K M4*L-=DK!%#:1NA^LW5V$ M4JQ O5KYJ%B>RM-KX+'OT/1AMBS_BV;8%RL<@K^#>7.%/9, MRL?B,^04*N44TLNINVP1-W%^8.F"=X(9!RZ(TJ.'QJ. _^-BEZC43$BK2;1+ M&W- YV!"$D&BJ9S6VP..1GQ]-]O8[3QV #TPP^_-P_ 9*@J5*@KI5=1#95&? M- )ZM]UL!!J!/T-+H5)+(?W)S^UBP<@""P*^RN42BSTP1E07I/E1MW(FEE7RY3=[7O[&JKA->@@VT+-91>5Z@CIU5&;M7F0 MI7[(8W?=[K[FU4?4-B&E5D)'G?1HU]Y!0K>>+0=:UC[A68]]S,H)?438(OUP MP8%/5['(#NN+UN+CR&WZ2< L7\^^K'S#3/[[QD%(YM+4ZO1D*ECVL2*[$31) MS_NG5 @:I9=+@F>$J1?D\SFE8GNC.B@^&8W^ U!+ P04 " "HB&593<6V M'BH& M,0 &0 'AL+W=OB8VV[<7.9N(F>TVP;#.+D1?)27:F#U\)"%A %*A/ M;V)CZWP2_X&#?DNY>F;I-[ZC5*"7?9SPZ\%.B,.E9?%P1_0W&Y;N M R$/TZW%#RD-UEG0/K:P;7O6/HB2P?PJ^^PVG5^QHXBCA-ZFB!_W^R#]L: Q M>[X>.(/7#^ZB[4ZH#ZSYU2'8TA45]X?;5!Y9)64=[6G"(Y:@E&ZN!S?.)7&Q M"LA:/$3TF9^\1^I4'AG[I@[^6E\/;#4B&M-0*$0@7Y[HDL:Q(LEQ?"^@@[)/ M%7CZ_I7^*3MY>3*/ :=+%G^-UF)W/9@.T)IN@F,L[MCSG[0XH;'BA2SFV5_T M7+2U!R@\ <1&0G;J5GWLFG!^(8'Z5LF>4JM:2IMYDZF?14J\H41?*2J3RVTC&B?E* ML/#;CL5KFO)?$?E^C,0/%"1KE'UQH7*P1DNVEQZ W>R97!LROC M**^,UC0;.:I07O)#$-+K@:R$G*9/=##_Y2?'LW]ODQ@2YD/""!!,2\:H3,8H MH[MO)./+47 A;[,HV:*[U7UK&D:0:8"$^9 P @33TC NTS VWA,+NHV21"7A M,8B#)*3H@ZR!>37\V):3'#?.<.J1_S1W[(DL+4^G6AO[[*LU)(P P32MO5)K MSZCU'VF0J.+SCL)>0^&18]<$-G;45V!(& &":0)/2H$G1H$?9(%_7]])0]\+ MU\4U@8T=]148$D: 8)K TU+@J5%@.1'>T*B#QM.FQLYD6M/8V%=?C2%A! BF M:3PK-9X9-2;Y,[%C.9XUA)XUJG&S3;-D^\9!]=4/"*;IY]B5?["-"IY.+91O MH"\'FLWZ!$-/LD2\IVF!/Q5LXKHU4@OA(T2U-T4IEH34'#N3<#Y3F@]((%$U/%JZ2 MA?_#!/!^Y:.#S$]VE[3?)#EV>EI57'?HU6\38^^]E8>D$2B:KGSE1AVS'3V= M#G;0.X>I7WDJP<>S(6XH#NHW06D$BJ8K7EE.QVBE3N>''00?M0B.)\-I_?%J M[K2WX*#6$HJF"UZ92\?L+O7Y8@?-QRV:N[.A5Y\ZFOOMK3FHQ82BZ9I7)M,Q MN\R6^6,'X;T6X4?C(1[7A?>ZE'W?/,;>BOX?IM*I7*5CMI6=YI,=-)XTI1OA MH=$Y1&H&AZ)BK[Z9C]IYPR9@M1\L(NU@%:?^WGZ!]$7FAX5"L^Z,MF M$X4R,TYK4B!]XQ*4YH/2"!1-3UWE:IW9V;_W.I F= E*\T%I!(JF+PI5#AF; M'7+'7R+-E+[YP$U;+9_MM0='ET;DG4:Z*)5MQ4:G=59Q:54/U,*"TGQ0&H&B MZ8FK+"S&9Y<6#.D\04%,,2B-0-#UUE2G&X_/+%:0C78+2?% : M@:+IR:C<,@99DS53>N>CN<3KU==C.K0AYC:Z(I7;Q6:W>U9E:=LDM#!WV%L\ M4'L,2B-0-#UUE3W&T_,K"ZCA!:7YH#0"1=.341E>;%['[5I90#TO;J[U3NQZ M97F_#3&WT7??5:[3-;O.LRI+V^[%A;G#WAOU0)=T06D$BJ:GKO+&KGE)MTME M<4']+BC-!Z41*)J>C,KONN8EVXZ5I:!H%LMS:A:K2R._2R/R3J/\7*V3;>%[ MFFZS_?@R8B'Q7<_EIN>?_)MOI7OM\Z5R2?.=^A!SD&ZCA*.8;B32 M'D[DB-)\;WY^(-@AVWS^R(1@^^SMC@9KFJH&\OL-8^+U0'50_H?$_%]02P,$ M% @ J(AE60&P:ZA&ULQ9GO;Z,V&,?_%8N=MCMI+9A?"5T2J0W<=M).JIK=]F+:"S"Z+BDVMC//-C6VS M989+Q*[)!E?BR8K0$G%Q2]PK8MBP1?;G#!=E/+6B]-CSDZXS+!GLVV: U7F#^;7-/Q9W=4M*\Q!7+204H M7DVM6WB3P% &*,6?.=ZSHVL@4WDDY$G>?$FGEB-'A N\Y!*!Q,<.SW%12)(8 MQ_<&:K5]RL#CZU?Z9Y6\2.81,3PGQ5]YRK.I-;9 BE=H6_ 'LO\--PD%DK/V3TS9@]\ M)17/&$BJ%*>:^'@X/AJ(M\7\M9/HOD[BG3L(7.#--?".2_:/;G74_?OZ_J6SWK -6N*I):R38;K#UNS''V#H_*(KC4E8 M;!*6&()UBNBW1?2'Z+/C[_7RJ(BZXVF*M+PT2+EUY)F&Q M25AB"-8I0]B6(7QG^PA-%M$D+#8)2PS!.D4^YQ*H*1 M'_;,XU041&'/AQ*-R T"O76,VW3'@^D^B E$=)FI'TZI\(^";.2"U*4[2+IT M]9F$Q29AB2%8IQQ16X[HG2TD,EE$D[#8)"PQ!.L4$3J'G8ECS$0:5.=K[?OC MGHOH5.&HYS6Q1@6#"/9DB58V\GR]E<"C#1D<3AL5F"DG$9NL)\SS:JW->)!R MZ1HT2HN-TA)3M&X]W$,]W'=VDV8 IDIIDA8;I26F:-U2'G:F<'#/=)FC>"=? M;R_TH[ZC:%2N&_4=Y50%H>,Z?4#P7NY77&&*"F4I*"WS M*F><(GD^I\U[$';Q8C1)BXW2$E.T;ED.VTT8O+>O&-VN&J7%1FF)*5JWE(54-0I'_0V/1N5Z01#V?44CRU<*ZM3Z@*_?1WQ%=)U7#!1X M);IRKD>BGK0^XJ]O.-FH,^Q'PCDIU66&48JI%(CG*T+XZXWLH'W1,OL74$L# M!!0 ( *B(95G -'>?2@, +H/ 9 >&PO=V]R:W-H965T,O(@>0Z'M!2S'RL@E*-K!DOL%1=OO%%Q0%G!BJH'P7!P"\P*;WQT#Q[Y.,AJR4E)3QR).JB MP/SU,U"V&WFAMW_P1#:YU _\\;#"&UB!_%(]C.(AMY@4X(**12*V#UMX5;H%0+J32^M9I>-Z4& M#]M[]9E9NUK+,Q9PR^@_))/YR+OT4 9K7%/YQ'9S:-=SKO521H7Y1;LV-O!0 M6@O)BA96&12D;/[Q]_8]' !A<@2(6B"R!>(6B&V!I 62GX'X"'#> N>V,PQ: M8& +7+3 A6U*ERUP:3O#50MRFZ)HJ,24VP1*/AYSM$-?Q M2D\W3)T:7E46*;6C5I*K4:(X.5Y)EK[DC&; Q1]H^JTF\A7A,D-FX).NU@S= MLD(Y6&!C@D]HI6R=U1006Z,GJ&J>YBH,W6PX@#*;%.C]!"0F5'Q0T5]6$_3^ MW0?T#I$2/1!*E8@8^E(EKU/PTS;1STVBT;%$H3I#]^#3T_@#?D5!8NBHAYZ=IO]B6S5Y;/"P![^SR#T,CN)SB]R; M%Q?TT(O3]-^IW'^V\*H'O[?'+WOPI/D M7^6)":,4<_05TQKZJKD12OJ%]#YY+2J3:K^Z_R1OUO/&6Y.W M,>'/,5,+G9E%S)W%7'.+F(5%S+U%S-+1RVX*PS\XS>M;[0/F&U(*1&&MY(.S M"W57XLU-L>E(5ID#_C.3ZL)@FKFZ7 /7 6I\S9C<=_2=H;NNC_\#4$L#!!0 M ( *B(95FF@7*D0P, /$, 9 >&PO=V]R:W-H965TV@6Z_ M?G824CZ\C'6\$-NYYQS?8V/?##:,?Q4;%T$JE+/JV+>(4L$># B]A!O*QN..J9S,\"K =XA(/@#P*\!_JD*00T(3E7HUH#NJ8"P!H2E M]Y59I=,1EG@TX&R#N(Y6;+I1+E>)5@83JC?63'+UEBB<''VD, G$.A- M!!*33+Q%[]#C+$)O+MZB"T0H>DC92F":B($ME:B&VG$M<%L)>'\0\-$G1F4J MT(0FD!CP43O^N@5OJV2;C+UMQK=>*^$,B@[RG4OD.5Y@F,_X=+AO2N?_U"?_ MISYMAT<0*[AK@N]YZ3>[QR_Y_+_N'A01$6=,K#B@KS=S(;DZ,[Z9MDO%&)@9 M]3G:%P6.86BI@U( 7X,U>OW*#9WWIK4Z)UET3K+)..@C7V[ MQE*M<<'9FN@KQ;2N%4M8LNCK;#T*7=<=V.O=]3H.\X!QZV"O[KL7&2Y.2JP8ND?>VSLE60Y\61;/ L5L165UOS:C M37U^4Y:E!^.W;G_L&L8CMS^IRN]G^NICX!/F2T(%RF"AI)Q.3_UY>55@5QW) MBK(@G#.IRLNRF:IO$N Z0+U?,":W'2W0?.6,?@-02P,$% @ J(AE65AK MGB5% @ /04 !D !X;"]W;W)K&ULC93;CM,P M$(9?Q3(2 @F:-#T )8G4[L*R%[NJ6@$7B LGF236.G:PG69Y>WQ(0Y&Z76X2 M'V;^^6;L<=P+^:!J (T>&\95@FNMVU40J+R&AJB):(&;G5+(AF@SE56@6@FD M<$X-"Z(P7 8-H1RGL5O;RC06G6:4PU8BU34-D;\WP$2?X"D^+NQH56N[$*1Q M2RK8@_[:;J69!:-*01O@B@J.))0)7D]7FX6U=P;?*/3J9(QL)ID0#W9R6R0X MM$# (-=6@9C? :Z ,2MD,'X-FG@,:1U/QT?USRYWDTM&%%P)]IT6ND[P>XP* M*$G']$[T7V#(QP'F@BGW1;VW7488Y9W2HAF<#4%#N?^3QZ$.)P[14P[1X! Y M;A_(45X33=)8BAY):VW4[,"EZKP-'.7V4/9:FEUJ_'2ZA\J46"/""W0#HI*D MK6F.UN: T2WWAVZK]Q;=$RF)+2%Z=0V:4*9>QX$V"%8HR(=P&Q\N>B+GK?-1E()$ID>M6>D:$=*J'.L7JUA5.S37M(IW%P. .P& $6_PD@7;E( MQN BP>)9@N#D2C<@*]>X"N6BX]K?[G%U?!O6OB7^FON'Y8[(BG*%&)3&-9R\ M,W&E;U8_T:)U#9();=K-#6OSOH&T!F:_%$(?)S; ^&*F?P!02P,$% @ MJ(AE664@0XKC! Q2 !D !X;"]W;W)K&UL MQ9IM;Z,X$(#_BL6M3KO2;L%@"/222&V O4K=4]5L[SZ<[@--G 0MX"QVFO;? MGWDI"<1%27:D?FEXF7G&'H_'>-SAEN4_^(I2@9[3).,C;27$^E+7^6Q%TXA? ML#7-Y)L%R]-(R-M\J?-U3J-YJ90FNFD8CIY&<::-A^6SNWP\9!N1Q!F]RQ'? MI&F4OUS3A&U'&M9>']S'RY4H'NCCX3I:TBD5#^N[7-[I#64>IS3C,O7^EAV7G9F<>(TPE+_HGG8C727 W-Z2+:).*>;?^D=8?L@C=C M"2__HFTM:VAHMN&"I;6R;$$:9]5O]%P[8D]!1/\W,3K O(9_26GPN/+ >BC3T44)_R3Q#Q,??3QPR?T <49^KYB&RX9 M?*@+V9FB2?JL;OAUU7#SC89;Z!O+Q(JC()O3N4+?[]?W>O1UZ<3&D^:K)Z_- M7N"4KB^097Q&IF$217LFQZM;JN[\FO7@UZR'_>H^G4EUK%)O^=)JHM(J>=8; MO#K6.%KD+$7!LZ!Y%B5H4LX'FO,R[FY9MOQR*_/2'%UQ3@5'_]Y*#KH1-.7_ MJ2*J,DK41HLF4FL7R^33&MN4Z@Z'^M#]*"C&"/<]IB_F'8H2XEFNTQ0*% MF.&YKML6"WM[=:;/[,9G=J_/OC,A9THY-Y*]N:%R806R]WKCN([5]6"ON5/C M_"B3 :3)T#X8,YMXWFYD6UYV&B\[O5Y^R&(A?3L5D5"'9Z_ZJ:D&$N9#P@)( M6 @$:PWHH!G0P7NL. /(,("$^9"P !(6 L%:8> V8>">O>*X![G+]4RKD_LG M"BG;&G0RG'\H93JF@TDG$2K$B&.1[GK3VZ8U'O.@UAOOH#=DX!"KX\!> M<*3=*O9JG9AE0F@]*"T!I M(12M/:)[.V_\'DM.;14J&B!I/B@M *6%4+1V-)B[:##/7GEJU=9G,W%,KY,Y M:['6IZ[CX(Z8KZ!AUQXXG3U1H,!AQ[))9U,4]G?L7,?M2@6X=PLZOLGF<:3T M&NAV'Y3F@]("4%H(16N/YV[/C\F[I$6@37D=#9 T'Y06@-)"*%H[&G;5# Q6 MSL"'Q07L$8-TLR1H0>,XHP&HT5!AU//LMSXQ=S4-W%_4N*=<(+8HSH(2547] MNE__Y#D$6M8 I06@M!"*UA[776D#OTMM X,6-T!I/B@M *6%4+1V-.PJ'+B_ MQ'%*1G4517;/Z"94H/)#/7+'V Q ;88*FR;!3B>?ZGNGK'+:+,OS<(YF;).) MZFBK>=J",CW"\;$ZTUAH/G/A?'_4$L#!!0 ( M *B(95G&R=74" 4 $T@ 9 >&PO=V]R:W-H965T.W9*/3G""X+D%IHEN&X>HIC#-M.B[;'LETC''Q]8)^7R?-D7B!%]SCY)UZS[40;:6"-7N$N84]X'Z$Z(:?@6^&$EG_!OK8U M-+#:48;3&LPC2..L^H4_ZHXX G >.<"J 98(&)X!V#7 [@L8UH!A7X!3 YR^ M +<&N'T!7@WP^O;2J :,^GKP:X!?RJ%Z?^7+GT$&IV."]X 4UIRMN"@55*+Y M.X^S0NQ+1OC3F./8]#O_GA;9"J<(/"("EEM($/@*[B"-5P!F:S"+DQU#:R U MO)XA!N.$WG#(\W(&KJ]NP!70 2V>4A!GX#F+&?URU/#7%N\H)^:-5R?W8YWQ M?(JH]%4=^UT5NW4F=AL\X(QM*0BR-5I+\%$WWN_ Z[P?F\ZT#IUY9W42+E$^ M +;Q!5B&-93$<]\-_W.7=<)GW? '2#C"N*SP,M%6 M6+?$%C.H]^G0M4QKK+\?JU%B97N>8#5K6]F^9YNG5H',HV,ZIU9S"9=CCP2/ M8=O*\DU#X(K:5J;E>Z++A<3,- WCP^=)]SM-]SN=-6.&,LP'^+-5PU%9-522 MS522!2K)YBK)0I5DD4JRA2*R$]FZC6S=SJI1S13WY:*"3Q/A.Q_X-N@PX;OF M,[SJ\D:FZ8K:.?YX7<\5BTIG )>*5259((_?%4J42I>A2K)(%O_(\X1Z)[7R M37FY\QK=>)VZ63*\>@,X+Y:\G^K$:T5@>;Z@DDYWEZI$)5G0CIX/9()&5#H, M59)%[>AM<4!?2#+TSNACU.ACU*F/)\1BP@L*+76R*Y:1GZEDU(K"%^84]YT^ M+Q6)2K*@'7QK=C57Z3!421:UHS='(T$D$AOGC$C\1B1^ITB"-$_P3X1JE>0[ MLMI"BD">P.PSM?AMS0IBZ?1]J5A4D@7MV,5ZHM)=J)(L^K3?%VT+6RX3T_C8 MY3(ZA7+8Q?K%>4K-?EH$35L8Z.^[@[A4,4K9 FD*PZ'PD14LUI6PSI6R!4K:Y4K90*5ND ME&VABNU4R=:'DJT>:[:BYA6;]HV8Y:6OHAH=#]L#JU7Y.AU>+%*5;($\ T\L M?"I]ADK9(DD&]L 1)^%2*^/,#,O\V,HV.S<=FZ&SIUQL66>+,ZMNEQ?+1>FV M=:\,YDI]ADK9(DD&]F#HBG)I6UD#7QPE]:.CQ12137DN3<$*[S)6G851Y@=]==#^ ,DFSBA(T"MW90P\/J*3ZNRZNF$X M+P\V7S!C."TOMPBN$2D,^/-7C-GAIG#0_ ?!]#]02P,$% @ J(AE69M& M=A?C P +Q4 !D !X;"]W;W)K&ULS9AM;]LV M$,>_"J$!10NLT9/EA]06D%@:&F M@KA;7PQ]P4BT140B-9**TV\_4I(52V;4 M9&6!O(DD^N['.][Q'Y#+/65W/$-(@(U4Y+;G.%.[@)A8X;(>NV;ADE8BQP1=,\"KHH#L^R7*Z7YE MN=9AX ;O,J$&['!9PAW:(/%7>\*%=B",'R=$[>*V#-W28/.'@MP[^8M Z3Y\X0M YUZG:3>[UP M$10P7#*Z!TQ92YIZJ5>_]I;KA8EJE(U@\EW!!!'Z?XKQ2901:H[<1$A#G_)TTYVJ$'QZ8@"\9K3@D*5_:0D:IYK*3-J++ M)B+OB8A\\(D2D7$0DQ2E&O]HW'\QXF_+U>F6R#LLT:4W"MR@\@SXSN_ <[R) M)I[U\]U]73H_-WO\OV?O+8;?]8M?\_PG>*HQNK[8H*1B6&!9\_@AR2NYWF#+ M: '6M"@K 6LIH%L00T8PV?&C[OGG3PD&5P(5_)NN1YHH)OHHE'J>\Q(F:&5) M>>2(W2,K?/.;.W4^Z ID$A:9A,6&8+U23KI23L;HX1W._BMW,+- MZSM=<1IN4'/5?Z+[T'6GP=*^/U[T4Z/9;-:WB30VSJ1O$^LF\YS.J)=ZT*4> MC*:^$32Y [14#:J5J%'WE[:?25AD$A8;@O5J,.UJ,'T52C(U64J3L,@D+#8$ MZY5RUI5R]HN49':RN>?!0 #6IS:SJ3<0DE.;8#X0I/C49N$%>AV9=XG/1Q._ M05PPG C9K;R6E(I@H1644L58=,58O I!69@LI4E89!(6 M&X+U2NDZC\<2YQ=)2@L^WN>^ZPXT16,T,(ET)NYBH"DZH_E4+RKNT9G,'4T^ M+LJH%96R8DDF#\.@S"'1ICR*>VE+&J5%1FFQ*5J_,-YC8;Q7(3%M&*8* M:I(6&:7%IFC]@CZ>9MW1$];/R(Q_LO.=H+PH2;H[DC#_P!0 M2P,$% @ J(AE67993>[V%/L M4?8D\XE# M2'T5ZLL""(?3Z?[WSV.4JJ<>G2N5O/*\8 M3VE*BK,LIT(C2293HG173KPBEY3$!3BEW&NW6J&7$B;<04_,TLM4%%KUS%\PRRF???VY.676:8N7CCF?/3JZ*AU>WJQ:3\I@5/7 MLY*>[T!ZUFKAQ !BY.%NY-NX,>K.3M1;F#'BKIWX][>?*'6#_8T\LI/_^H[D ML :V)K'3PC3_0'@;9#NQOXO>LRV*T:7HM->IE_D^UEQU\H\QY\#BW'@:-Z_: M5H->DHEF=P6N,6A>DE+GCO"^.R2.>)RL9*PM4U$TMJ&H:&M,!_E4VP[U* MVWD2KY.SNTR]F^GIB+(/]4FO)$W8O.S/DUH QN[C["3/^>(M9Q.14C/YG0,. M>F3IYTPSR>YU-"B5L390Z3IW5"HV7K5\E22_H7.U+*=Y@FMN'Z#F?[O.$RJH M)'Q5M*[]?5[E)RL..L\EN;RJ; JV:JP>1!U&3W$$1&!R"R M\VQ7S<>(] ]!9/L01 ;[+S+8SWWC50^^*T_7:\_6M=6!=YB^^PG>A7@3U!G- M&%=,5+TIBV,J'CQB:WI%1IRN\^OQ,4W(C*N;&NR[3?LCC=DLC>I15[ 0U:BF M_0&FYX?U"Y2.Q41,YS0>5ETY&95-1S=TU.H ATWDLCSL".9C,#L"&!8'4X#Y M&"\LSO\TGRXZ'X-AVKI6I(OZ=%$?XV5#AN4'BV/WB?1AGVD4!4$88BLZ'%H5 M#+%U"T/XVMDP;>"!Q8%(CUMK/-MXA6RO RRGVRH$FRE>B=A,\;4&Q+YNX!%% M]FQC<< #RP)6.Q#?'@=JRNX3!)!53!NV@W$DBC $:M%>HV&(K$X('WM^L%T2 M!%%D1P"S*P@"#('=B".8 M" (4%0W@\C[E-7_N#_X 4$L#!!0 ( M *B(95F7BKL

-8?20$3;8T.P6BP^0"X99K>]9!:GQ\IO1GJM588U2 MB]%LO^-16"^+GXI7'>0#?W)]B>=/]QQ %J/Y%"ZXEM;Y_HC^^AP8MP(.WF^U MWEQ+Y86]XEY\MJ9MI-YTEX&GF 2/T)HDNAG2@9 M_'-&R1(X2G;!%=>%8 %D@D F T+^DP20*0*9#@*YZG#@U R0R"S 2&C2.8( M9#XD9!I SA'(^9"060!Y@D">T$)>"5=8V73ES*S91>ND%LXQKH&TK0/(4P3R ME!;RFDO+'KEJ1<=X+34T:LD5N]'.VPCR#($\HX5<%G!(J_HZ_NHK8:'::]!F M!>\ 2";LS*=8;SZEQ00U-R#.U[Z&/_W;RJ8[X7=V*WR(B J'V#CW8BLTU/7: MFKIK.]Z"IQW;25^QR]:%F)AR9L3.N8&<1&^ZF[*ENEU MB(EY9$8L$FB?["U\=]!!KRINHXX9T\>,V!]W_)5M7F@S@FG)%)TGHS8.3AF'F)BSDF)G8-CSD-,S#DIL7-P MS),0$W-.2NP<'/,TQ,2:@ M;+A),S9F=R$F9J&,V$(XYFV(B5DH([80G@2'[V:&62@CMA".&;V;Z/<:8@OA MF*$L,\Q"V: CGU"6&6:A;)"1SYA=3T!EF MH8S80N]B?GII1!%A8A;*B"WT-HX\1$]N88!Q)3R7*AIAY)B"5.::@G%Q!/[Z6'>_5,?/D@\[!10M9 M,/G,B>6#8X8-?([)9TXLGZ-3A6-VP1W \E ^S7RF1Y=WGS76KU"64?=5?#"\/:QL/ MZS(__@=02P,$% @ J(AE62=EU:4, @ A"4 !H !X;"]?!-T#(HPS=1Y +Z1 ITA@\%3$D>/D7Q =B^/2K'-IQWYWJ;M_7Q. M_8^4ZGI7CFV]Z_IR.E_9=,.Q'<_+89OZ=OW>;DO2Y3*GX79&\_QT.W/Q^MF7 M_YG8;3;[=?G9K7\?RVG\Q^#TIQO>ZZZ4L5F\ML.VC*LF?1RNIVNZ'.3N/+E9 MO+RMFN'E39HT=Y!"D,X?9!!D\PBGHK@=Z*>BN!WHIZ M*X'>BGHK@=Z*>BN!WHIZ*X'>AGH;@=Z&>AN!WH9Z&X'>-MDL(=#;4&\CT-M0 M;R/0VU!O(]#;4&\CT-M0;R/0VU!O(]#;46\GT-M1;R?0VU%O)]#;46\GT-LG MF]T$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'H'ZAT$>@?J'01Z!^H=!'H' MZAT$>@?J'01ZQ^1G)8'>@7H'@=Z!>@>!WH%Z!X'>@7H'@=X9]F?4.Q/H MG5'O3*!W1KWS=^I=Q\]#J=>>KS4^_SNI'L_WENOC+\NODY-7Y8)SNJVHSW\! M4$L#!!0 ( *B(95GNU>T8Y@$ /4D 3 6T-O;G1E;G1?5'EP97-= M+GAM;,W:74_",!0&X+]"=FM8Z=?\B'"CWJH7_H&Z'61A6YNV(/Q[NP$F&B4: M3'QO6*#M><]ZDN>*ZZ>MHS#:M$T7IMDB1G?%6"@7U)J06T==6IE;WYJ8OOH7 MYDRY-"_$Q&12L-)VD;HXCGV-;'9]2W.S:N+H;I-^#K7MIIFG)F2CF]W&/FN: M&>>:NC0QK;-U5WU*&>\3\G1RV!,6M0MG:4/&ODSH5[X/V)][6)/W=46C1^/C MO6G3+K9I6(C;AD)^O,07/=KYO"ZILN6J34?RX#R9*BR(8MODNZ)GQY-CNF': M??*3\X00V/$Z_XX\S?J__RSX$2!\2I \%TH<&Z:, Z>,&UL4$L! A0#% @ J(AE6:LY)SGO *P( !$ M ( !KP &1O8U!R;W!S+V-O&UL4$L! A0#% @ J(AE M69E&PO=V]R:W-H965T&UL4$L! A0#% @ J(AE M69)?2B[@!@ G1T !@ ("!( X 'AL+W=O&PO=V]R:W-H M965T&UL4$L! A0#% @ J(AE6:CYW)NM P N0T !@ M ("!'1\ 'AL+W=O&PO=V]R:W-H965T&UL M4$L! A0#% @ J(AE6;^EQ WV"0 (!L !@ ("!3CL M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ J(AE64&\*ED2"0 C1< !D M ("!D&$ 'AL+W=O&PO=V]R M:W-H965T 0 (L* M 9 " @91O !X;"]W;W)K&UL M4$L! A0#% @ J(AE62--\YJM P ]P@ !D ("!0W0 M 'AL+W=OFP- 9)P &0 @($G> >&PO=V]R:W-H965T&UL4$L! A0#% @ MJ(AE67+B?.!C! V0D !D ("!W(L 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ J(AE63-OH#&PO=V]R:W-H965TH !X;"]W;W)K&UL4$L! A0#% @ J(AE6>?F7*5X!0 6@\ !D M ("!-;$ 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ J(AE67+">@#A P _@D !D ("!#;X 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ J(AE M69""OP)[ P &PO=V]R:W-H965T&UL4$L! A0#% @ J(AE65ZHO1'3" 0D$ M !D ("!DMD 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ J(AE66F23XPL!0 OBL !D M ("!Z^L 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ J(AE60=THM"F" CC\ !D ("!4_@ 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ J(AE66LE M!Q_( P %!4 !D ("!]PH! 'AL+W=O&PO=V]R:W-H965T@/U , $(7 9 " @5L3 0!X;"]W;W)K&UL4$L! A0#% @ J(AE6;,<2A.6 P B1 !D M ("!9A;#ZW6<" #&PO M=V]R:W-H965T&UL4$L! A0#% @ J(AE67C! 62H @ \ < !D ("! MDR(! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ J(AE6=$-]A*R @ HP8 !D ("!(2L! 'AL+W=O&UL4$L! A0#% @ J(AE69?T;>Y6 M"P 1H< !D ("!J3,! 'AL+W=O&PO=V]R:W-H965T*@8 "TQ 9 " @9I$ 0!X;"]W;W)K&UL4$L! A0#% @ J(AE60&P:ZA&PO=V]R M:W-H965T&UL M4$L! A0#% @ J(AE65AKGB5% @ /04 !D ("!B58! M 'AL+W=O&PO=V]R:W-H965T 0!X;"]W;W)K&UL4$L! A0#% @ MJ(AE69M&=A?C P +Q4 !D ("!7F,! 'AL+W=O&UL+G)E;'-02P$"% ,4 M " "HB&59[M7M&.8! #U) $P @ %M XML 76 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 77 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 79 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.3 html 291 305 1 false 68 0 false 9 false false R1.htm 0000001 - Document - Cover Sheet http://www.qualys.com/role/Cover Cover Cover 1 false false R2.htm 9952151 - Statement - Condensed Consolidated Balance Sheets Sheet http://www.qualys.com/role/CondensedConsolidatedBalanceSheets Condensed Consolidated Balance Sheets Statements 2 false false R3.htm 9952152 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) Sheet http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical Condensed Consolidated Balance Sheets (Parenthetical) Statements 3 false false R4.htm 9952153 - Statement - Condensed Consolidated Statements of Operations Sheet http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations Condensed Consolidated Statements of Operations Statements 4 false false R5.htm 9952154 - Statement - Condensed Consolidated Statements of Comprehensive Income Sheet http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome Condensed Consolidated Statements of Comprehensive Income Statements 5 false false R6.htm 9952155 - Statement - Condensed Consolidated Statements of Cash Flows Sheet http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows Condensed Consolidated Statements of Cash Flows Statements 6 false false R7.htm 9952156 - Statement - Condensed Consolidated Statements of Stockholders' Equity Sheet http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity Condensed Consolidated Statements of Stockholders' Equity Statements 7 false false R8.htm 9952157 - Disclosure - Description of Business and Summary of Significant Accounting Policies Sheet http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPolicies Description of Business and Summary of Significant Accounting Policies Notes 8 false false R9.htm 9952158 - Disclosure - Fair Value of Financial Instruments Sheet http://www.qualys.com/role/FairValueofFinancialInstruments Fair Value of Financial Instruments Notes 9 false false R10.htm 9952159 - Disclosure - Accumulated Other Comprehensive Income (Loss) Sheet http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLoss Accumulated Other Comprehensive Income (Loss) Notes 10 false false R11.htm 9952160 - Disclosure - Property and Equipment, Net Sheet http://www.qualys.com/role/PropertyandEquipmentNet Property and Equipment, Net Notes 11 false false R12.htm 9952161 - Disclosure - Revenue from Contracts with Customers Sheet http://www.qualys.com/role/RevenuefromContractswithCustomers Revenue from Contracts with Customers Notes 12 false false R13.htm 9952162 - Disclosure - Intangible Assets, Net Sheet http://www.qualys.com/role/IntangibleAssetsNet Intangible Assets, Net Notes 13 false false R14.htm 9952163 - Disclosure - Leases Sheet http://www.qualys.com/role/Leases Leases Notes 14 false false R15.htm 9952164 - Disclosure - Commitments and Contingencies Sheet http://www.qualys.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 15 false false R16.htm 9952165 - Disclosure - Stockholders' Equity and Stock-based Compensation Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensation Stockholders' Equity and Stock-based Compensation Notes 16 false false R17.htm 9952166 - Disclosure - Income Taxes Sheet http://www.qualys.com/role/IncomeTaxes Income Taxes Notes 17 false false R18.htm 9952167 - Disclosure - Segment and Geographic Area Information Sheet http://www.qualys.com/role/SegmentandGeographicAreaInformation Segment and Geographic Area Information Notes 18 false false R19.htm 9952168 - Disclosure - Net Income Per Share Sheet http://www.qualys.com/role/NetIncomePerShare Net Income Per Share Notes 19 false false R20.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 20 false false R21.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 21 false false R22.htm 9954471 - Disclosure - Description of Business and Summary of Significant Accounting Policies (Policies) Sheet http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPoliciesPolicies Description of Business and Summary of Significant Accounting Policies (Policies) Policies http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPolicies 22 false false R23.htm 9954472 - Disclosure - Fair Value of Financial Instruments (Tables) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsTables Fair Value of Financial Instruments (Tables) Tables http://www.qualys.com/role/FairValueofFinancialInstruments 23 false false R24.htm 9954473 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables) Sheet http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossTables Accumulated Other Comprehensive Income (Loss) (Tables) Tables http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLoss 24 false false R25.htm 9954474 - Disclosure - Property and Equipment, Net (Tables) Sheet http://www.qualys.com/role/PropertyandEquipmentNetTables Property and Equipment, Net (Tables) Tables http://www.qualys.com/role/PropertyandEquipmentNet 25 false false R26.htm 9954475 - Disclosure - Revenue from Contracts with Customers (Tables) Sheet http://www.qualys.com/role/RevenuefromContractswithCustomersTables Revenue from Contracts with Customers (Tables) Tables http://www.qualys.com/role/RevenuefromContractswithCustomers 26 false false R27.htm 9954476 - Disclosure - Intangible Assets, Net (Tables) Sheet http://www.qualys.com/role/IntangibleAssetsNetTables Intangible Assets, Net (Tables) Tables http://www.qualys.com/role/IntangibleAssetsNet 27 false false R28.htm 9954477 - Disclosure - Leases (Tables) Sheet http://www.qualys.com/role/LeasesTables Leases (Tables) Tables http://www.qualys.com/role/Leases 28 false false R29.htm 9954478 - Disclosure - Stockholders' Equity and Stock-based Compensation (Tables) Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables Stockholders' Equity and Stock-based Compensation (Tables) Tables http://www.qualys.com/role/StockholdersEquityandStockbasedCompensation 29 false false R30.htm 9954479 - Disclosure - Segment and Geographic Area Information (Tables) Sheet http://www.qualys.com/role/SegmentandGeographicAreaInformationTables Segment and Geographic Area Information (Tables) Tables http://www.qualys.com/role/SegmentandGeographicAreaInformation 30 false false R31.htm 9954480 - Disclosure - Net Income Per Share (Tables) Sheet http://www.qualys.com/role/NetIncomePerShareTables Net Income Per Share (Tables) Tables http://www.qualys.com/role/NetIncomePerShare 31 false false R32.htm 9954481 - Disclosure - Fair Value of Financial Instruments - Assets and Liabilities (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails Fair Value of Financial Instruments - Assets and Liabilities (Details) Details 32 false false R33.htm 9954482 - Disclosure - Fair Value of Financial Instruments - Cash and Cash Equivalents (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails Fair Value of Financial Instruments - Cash and Cash Equivalents (Details) Details 33 false false R34.htm 9954483 - Disclosure - Fair Value of Financial Instruments - Summary of Securities in Unrealized Loss Positions (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails Fair Value of Financial Instruments - Summary of Securities in Unrealized Loss Positions (Details) Details 34 false false R35.htm 9954484 - Disclosure - Fair Value of Financial Instruments - Summary of the Fair Value of Marketable Securities (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails Fair Value of Financial Instruments - Summary of the Fair Value of Marketable Securities (Details) Details 35 false false R36.htm 9954485 - Disclosure - Fair Value of Financial Instruments - Narrative (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails Fair Value of Financial Instruments - Narrative (Details) Details 36 false false R37.htm 9954486 - Disclosure - Fair Value of Financial Instruments - Summary of Derivative Financial Instruments (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails Fair Value of Financial Instruments - Summary of Derivative Financial Instruments (Details) Details 37 false false R38.htm 9954487 - Disclosure - Fair Value of Financial Instruments - Amounts Recognized In Statement of Operations (Details) Sheet http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails Fair Value of Financial Instruments - Amounts Recognized In Statement of Operations (Details) Details 38 false false R39.htm 9954488 - Disclosure - Accumulated Other Comprehensive Income (Loss) - Components and Changes (Details) Sheet http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails Accumulated Other Comprehensive Income (Loss) - Components and Changes (Details) Details http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossTables 39 false false R40.htm 9954489 - Disclosure - Accumulated Other Comprehensive Income (Loss) - Amounts Reclassified from AOCI (Details) Sheet http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails Accumulated Other Comprehensive Income (Loss) - Amounts Reclassified from AOCI (Details) Details http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossTables 40 false false R41.htm 9954490 - Disclosure - Property and Equipment, Net - Property and Equipment, Net (Details) Sheet http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails Property and Equipment, Net - Property and Equipment, Net (Details) Details 41 false false R42.htm 9954491 - Disclosure - Property and Equipment, Net - Narrative (Details) Sheet http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails Property and Equipment, Net - Narrative (Details) Details 42 false false R43.htm 9954492 - Disclosure - Revenue from Contracts with Customers - Narrative (Details) Sheet http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails Revenue from Contracts with Customers - Narrative (Details) Details 43 false false R44.htm 9954493 - Disclosure - Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details) Sheet http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details) Details 44 false false R45.htm 9954494 - Disclosure - Revenue from Contracts with Customers - Revenue by Sales Channel (Details) Sheet http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails Revenue from Contracts with Customers - Revenue by Sales Channel (Details) Details 45 false false R46.htm 9954495 - Disclosure - Revenue from Contracts with Customers - Capitalized Cost to Obtain Contracts, Current and Noncurrent (Details) Sheet http://www.qualys.com/role/RevenuefromContractswithCustomersCapitalizedCosttoObtainContractsCurrentandNoncurrentDetails Revenue from Contracts with Customers - Capitalized Cost to Obtain Contracts, Current and Noncurrent (Details) Details 46 false false R47.htm 9954496 - Disclosure - Intangible Assets, Net- Carrying Value of Intangible Assets (Details) Sheet http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails Intangible Assets, Net- Carrying Value of Intangible Assets (Details) Details 47 false false R48.htm 9954497 - Disclosure - Intangible Assets, Net - Narrative (Details) Sheet http://www.qualys.com/role/IntangibleAssetsNetNarrativeDetails Intangible Assets, Net - Narrative (Details) Details 48 false false R49.htm 9954498 - Disclosure - Intangible Assets, Net - Expected Amortization Expense in Future Periods (Details) Sheet http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails Intangible Assets, Net - Expected Amortization Expense in Future Periods (Details) Details 49 false false R50.htm 9954499 - Disclosure - Leases - Narrative (Details) Sheet http://www.qualys.com/role/LeasesNarrativeDetails Leases - Narrative (Details) Details 50 false false R51.htm 9954500 - Disclosure - Leases - Supplemental Cash Flow Information (Details) Sheet http://www.qualys.com/role/LeasesSupplementalCashFlowInformationDetails Leases - Supplemental Cash Flow Information (Details) Details 51 false false R52.htm 9954501 - Disclosure - Leases- Weighted Average Remaining Lease Term and Weighted Average Discount Rate (Details) Sheet http://www.qualys.com/role/LeasesWeightedAverageRemainingLeaseTermandWeightedAverageDiscountRateDetails Leases- Weighted Average Remaining Lease Term and Weighted Average Discount Rate (Details) Details 52 false false R53.htm 9954502 - Disclosure - Leases - Minimum Annual Lease Payments (Details) Sheet http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails Leases - Minimum Annual Lease Payments (Details) Details 53 false false R54.htm 9954503 - Disclosure - Stockholders' Equity and Stock-based Compensation - Narrative (Details) Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails Stockholders' Equity and Stock-based Compensation - Narrative (Details) Details http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables 54 false false R55.htm 9954504 - Disclosure - Stockholders' Equity and Stock-based Compensation - Share-based Compensation and Stock Options Activity (Details) Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails Stockholders' Equity and Stock-based Compensation - Share-based Compensation and Stock Options Activity (Details) Details 55 false false R56.htm 9954505 - Disclosure - Stockholders' Equity and Stock-based Compensation - Summary of Restricted Stock Unit Activity (Details) Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails Stockholders' Equity and Stock-based Compensation - Summary of Restricted Stock Unit Activity (Details) Details 56 false false R57.htm 9954506 - Disclosure - Stockholders' Equity and Stock-based Compensation - Summary of Stock-based Compensation Expense (Details) Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails Stockholders' Equity and Stock-based Compensation - Summary of Stock-based Compensation Expense (Details) Details 57 false false R58.htm 9954507 - Disclosure - Stockholders' Equity and Stock-based Compensation - Schedule of Repurchase Agreements (Details) Sheet http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationScheduleofRepurchaseAgreementsDetails Stockholders' Equity and Stock-based Compensation - Schedule of Repurchase Agreements (Details) Details 58 false false R59.htm 9954508 - Disclosure - Income Taxes (Details) Sheet http://www.qualys.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://www.qualys.com/role/IncomeTaxes 59 false false R60.htm 9954509 - Disclosure - Segment and Geographic Area Information - Narrative (Details) Sheet http://www.qualys.com/role/SegmentandGeographicAreaInformationNarrativeDetails Segment and Geographic Area Information - Narrative (Details) Details 60 false false R61.htm 9954510 - Disclosure - Segment and Geographic Area Information - Revenue and Property and Equipment, Net by Geographic Area (Details) Sheet http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails Segment and Geographic Area Information - Revenue and Property and Equipment, Net by Geographic Area (Details) Details 61 false false R62.htm 9954511 - Disclosure - Net Income Per Share - Basic and Diluted Net Income Per Share (Details) Sheet http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails Net Income Per Share - Basic and Diluted Net Income Per Share (Details) Details 62 false false R63.htm 9954512 - Disclosure - Net Income Per Share - Anti-dilutive Net Income Per Share (Details) Sheet http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails Net Income Per Share - Anti-dilutive Net Income Per Share (Details) Details 63 false false All Reports Book All Reports qlys-20240930.htm qlys-20240930.xsd qlys-20240930_cal.xml qlys-20240930_def.xml qlys-20240930_lab.xml qlys-20240930_pre.xml http://fasb.org/srt/2024 http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 true true JSON 82 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "qlys-20240930.htm": { "nsprefix": "qlys", "nsuri": "http://www.qualys.com/20240930", "dts": { "inline": { "local": [ "qlys-20240930.htm" ] }, "schema": { "local": [ "qlys-20240930.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd", "https://xbrl.sec.gov/country/2024/country-2024.xsd", "https://xbrl.sec.gov/dei/2024/dei-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd", "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" ] }, "calculationLink": { "local": [ "qlys-20240930_cal.xml" ] }, "definitionLink": { "local": [ "qlys-20240930_def.xml" ] }, "labelLink": { "local": [ "qlys-20240930_lab.xml" ] }, "presentationLink": { "local": [ "qlys-20240930_pre.xml" ] } }, "keyStandard": 290, "keyCustom": 15, "axisStandard": 24, "axisCustom": 0, "memberStandard": 45, "memberCustom": 21, "hidden": { "total": 16, "http://xbrl.sec.gov/ecd/2024": 4, "http://fasb.org/us-gaap/2024": 7, "http://xbrl.sec.gov/dei/2024": 5 }, "contextCount": 291, "entityCount": 1, "segmentCount": 68, "elementCount": 574, "unitCount": 9, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 1102, "http://xbrl.sec.gov/ecd/2024": 29, "http://xbrl.sec.gov/dei/2024": 29, "http://fasb.org/srt/2024": 2 }, "report": { "R1": { "role": "http://www.qualys.com/role/Cover", "longName": "0000001 - Document - Cover", "shortName": "Cover", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets", "longName": "9952151 - Statement - Condensed Consolidated Balance Sheets", "shortName": "Condensed Consolidated Balance Sheets", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "longName": "9952152 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)", "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "longName": "9952153 - Statement - Condensed Consolidated Statements of Operations", "shortName": "Condensed Consolidated Statements of Operations", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:GrossProfit", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R5": { "role": "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome", "longName": "9952154 - Statement - Condensed Consolidated Statements of Comprehensive Income", "shortName": "Condensed Consolidated Statements of Comprehensive Income", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R6": { "role": "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows", "longName": "9952155 - Statement - Condensed Consolidated Statements of Cash Flows", "shortName": "Condensed Consolidated Statements of Cash Flows", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R7": { "role": "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "longName": "9952156 - Statement - Condensed Consolidated Statements of Stockholders' Equity", "shortName": "Condensed Consolidated Statements of Stockholders' Equity", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "c-42", "name": "us-gaap:SharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-46", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R8": { "role": "http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPolicies", "longName": "9952157 - Disclosure - Description of Business and Summary of Significant Accounting Policies", "shortName": "Description of Business and Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.qualys.com/role/FairValueofFinancialInstruments", "longName": "9952158 - Disclosure - Fair Value of Financial Instruments", "shortName": "Fair Value of Financial Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLoss", "longName": "9952159 - Disclosure - Accumulated Other Comprehensive Income (Loss)", "shortName": "Accumulated Other Comprehensive Income (Loss)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "c-1", "name": "qlys:AccumulatedOtherComprehensiveIncomeDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "qlys:AccumulatedOtherComprehensiveIncomeDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.qualys.com/role/PropertyandEquipmentNet", "longName": "9952160 - Disclosure - Property and Equipment, Net", "shortName": "Property and Equipment, Net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.qualys.com/role/RevenuefromContractswithCustomers", "longName": "9952161 - Disclosure - Revenue from Contracts with Customers", "shortName": "Revenue from Contracts with Customers", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.qualys.com/role/IntangibleAssetsNet", "longName": "9952162 - Disclosure - Intangible Assets, Net", "shortName": "Intangible Assets, Net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.qualys.com/role/Leases", "longName": "9952163 - Disclosure - Leases", "shortName": "Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c-1", "name": "qlys:LesseeOperatingLeasesAndFinanceLeaseTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "qlys:LesseeOperatingLeasesAndFinanceLeaseTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.qualys.com/role/CommitmentsandContingencies", "longName": "9952164 - Disclosure - Commitments and Contingencies", "shortName": "Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensation", "longName": "9952165 - Disclosure - Stockholders' Equity and Stock-based Compensation", "shortName": "Stockholders' Equity and Stock-based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.qualys.com/role/IncomeTaxes", "longName": "9952166 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.qualys.com/role/SegmentandGeographicAreaInformation", "longName": "9952167 - Disclosure - Segment and Geographic Area Information", "shortName": "Segment and Geographic Area Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.qualys.com/role/NetIncomePerShare", "longName": "9952168 - Disclosure - Net Income Per Share", "shortName": "Net Income Per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R20": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": null }, "R21": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "c-5", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPoliciesPolicies", "longName": "9954471 - Disclosure - Description of Business and Summary of Significant Accounting Policies (Policies)", "shortName": "Description of Business and Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "22", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables", "longName": "9954472 - Disclosure - Fair Value of Financial Instruments (Tables)", "shortName": "Fair Value of Financial Instruments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossTables", "longName": "9954473 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables)", "shortName": "Accumulated Other Comprehensive Income (Loss) (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.qualys.com/role/PropertyandEquipmentNetTables", "longName": "9954474 - Disclosure - Property and Equipment, Net (Tables)", "shortName": "Property and Equipment, Net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.qualys.com/role/RevenuefromContractswithCustomersTables", "longName": "9954475 - Disclosure - Revenue from Contracts with Customers (Tables)", "shortName": "Revenue from Contracts with Customers (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.qualys.com/role/IntangibleAssetsNetTables", "longName": "9954476 - Disclosure - Intangible Assets, Net (Tables)", "shortName": "Intangible Assets, Net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.qualys.com/role/LeasesTables", "longName": "9954477 - Disclosure - Leases (Tables)", "shortName": "Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables", "longName": "9954478 - Disclosure - Stockholders' Equity and Stock-based Compensation (Tables)", "shortName": "Stockholders' Equity and Stock-based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.qualys.com/role/SegmentandGeographicAreaInformationTables", "longName": "9954479 - Disclosure - Segment and Geographic Area Information (Tables)", "shortName": "Segment and Geographic Area Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.qualys.com/role/NetIncomePerShareTables", "longName": "9954480 - Disclosure - Net Income Per Share (Tables)", "shortName": "Net Income Per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails", "longName": "9954481 - Disclosure - Fair Value of Financial Instruments - Assets and Liabilities (Details)", "shortName": "Fair Value of Financial Instruments - Assets and Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-76", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R33": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "longName": "9954482 - Disclosure - Fair Value of Financial Instruments - Cash and Cash Equivalents (Details)", "shortName": "Fair Value of Financial Instruments - Cash and Cash Equivalents (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "qlys:CashAndCashEquivalentsAndDebtSecuritiesAvailableForSaleAmortizedCostToFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "qlys:CashAndCashEquivalentsAndDebtSecuritiesAvailableForSaleAmortizedCostToFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R34": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails", "longName": "9954483 - Disclosure - Fair Value of Financial Instruments - Summary of Securities in Unrealized Loss Positions (Details)", "shortName": "Fair Value of Financial Instruments - Summary of Securities in Unrealized Loss Positions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails", "longName": "9954484 - Disclosure - Fair Value of Financial Instruments - Summary of the Fair Value of Marketable Securities (Details)", "shortName": "Fair Value of Financial Instruments - Summary of the Fair Value of Marketable Securities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveThroughTenYearsAmortizedCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveThroughTenYearsAmortizedCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "longName": "9954485 - Disclosure - Fair Value of Financial Instruments - Narrative (Details)", "shortName": "Fair Value of Financial Instruments - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "c-110", "name": "us-gaap:Investments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-110", "name": "us-gaap:Investments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails", "longName": "9954486 - Disclosure - Fair Value of Financial Instruments - Summary of Derivative Financial Instruments (Details)", "shortName": "Fair Value of Financial Instruments - Summary of Derivative Financial Instruments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ForeignCurrencyContractAssetFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:ForeignCurrencyContractAssetFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails", "longName": "9954487 - Disclosure - Fair Value of Financial Instruments - Amounts Recognized In Statement of Operations (Details)", "shortName": "Fair Value of Financial Instruments - Amounts Recognized In Statement of Operations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails", "longName": "9954488 - Disclosure - Accumulated Other Comprehensive Income (Loss) - Components and Changes (Details)", "shortName": "Accumulated Other Comprehensive Income (Loss) - Components and Changes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "c-33", "name": "us-gaap:StockholdersEquity", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:OciBeforeReclassificationsBeforeTaxAttributableToParent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R40": { "role": "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "longName": "9954489 - Disclosure - Accumulated Other Comprehensive Income (Loss) - Amounts Reclassified from AOCI (Details)", "shortName": "Accumulated Other Comprehensive Income (Loss) - Amounts Reclassified from AOCI (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-148", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R41": { "role": "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails", "longName": "9954490 - Disclosure - Property and Equipment, Net - Property and Equipment, Net (Details)", "shortName": "Property and Equipment, Net - Property and Equipment, Net (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails", "longName": "9954491 - Disclosure - Property and Equipment, Net - Narrative (Details)", "shortName": "Property and Equipment, Net - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "qlys:DepreciationDepletionAndAmortizationExcludingIntangibleAssetAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R43": { "role": "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails", "longName": "9954492 - Disclosure - Revenue from Contracts with Customers - Narrative (Details)", "shortName": "Revenue from Contracts with Customers - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails", "longName": "9954493 - Disclosure - Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details)", "shortName": "Revenue from Contracts with Customers - Expected Revenue from All Remaining Performance Obligations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails", "longName": "9954494 - Disclosure - Revenue from Contracts with Customers - Revenue by Sales Channel (Details)", "shortName": "Revenue from Contracts with Customers - Revenue by Sales Channel (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-176", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R46": { "role": "http://www.qualys.com/role/RevenuefromContractswithCustomersCapitalizedCosttoObtainContractsCurrentandNoncurrentDetails", "longName": "9954495 - Disclosure - Revenue from Contracts with Customers - Capitalized Cost to Obtain Contracts, Current and Noncurrent (Details)", "shortName": "Revenue from Contracts with Customers - Capitalized Cost to Obtain Contracts, Current and Noncurrent (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:CapitalizedContractCostNetCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "qlys:ContractWithCustomerCommissionAssetBalancesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:CapitalizedContractCostNetCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "qlys:ContractWithCustomerCommissionAssetBalancesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails", "longName": "9954496 - Disclosure - Intangible Assets, Net- Carrying Value of Intangible Assets (Details)", "shortName": "Intangible Assets, Net- Carrying Value of Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.qualys.com/role/IntangibleAssetsNetNarrativeDetails", "longName": "9954497 - Disclosure - Intangible Assets, Net - Narrative (Details)", "shortName": "Intangible Assets, Net - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails", "longName": "9954498 - Disclosure - Intangible Assets, Net - Expected Amortization Expense in Future Periods (Details)", "shortName": "Intangible Assets, Net - Expected Amortization Expense in Future Periods (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.qualys.com/role/LeasesNarrativeDetails", "longName": "9954499 - Disclosure - Leases - Narrative (Details)", "shortName": "Leases - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:OperatingLeaseExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:OperatingLeaseExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.qualys.com/role/LeasesSupplementalCashFlowInformationDetails", "longName": "9954500 - Disclosure - Leases - Supplemental Cash Flow Information (Details)", "shortName": "Leases - Supplemental Cash Flow Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeasePayments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeasePayments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.qualys.com/role/LeasesWeightedAverageRemainingLeaseTermandWeightedAverageDiscountRateDetails", "longName": "9954501 - Disclosure - Leases- Weighted Average Remaining Lease Term and Weighted Average Discount Rate (Details)", "shortName": "Leases- Weighted Average Remaining Lease Term and Weighted Average Discount Rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails", "longName": "9954502 - Disclosure - Leases - Minimum Annual Lease Payments (Details)", "shortName": "Leases - Minimum Annual Lease Payments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "longName": "9954503 - Disclosure - Stockholders' Equity and Stock-based Compensation - Narrative (Details)", "shortName": "Stockholders' Equity and Stock-based Compensation - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R55": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails", "longName": "9954504 - Disclosure - Stockholders' Equity and Stock-based Compensation - Share-based Compensation and Stock Options Activity (Details)", "shortName": "Stockholders' Equity and Stock-based Compensation - Share-based Compensation and Stock Options Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R56": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "longName": "9954505 - Disclosure - Stockholders' Equity and Stock-based Compensation - Summary of Restricted Stock Unit Activity (Details)", "shortName": "Stockholders' Equity and Stock-based Compensation - Summary of Restricted Stock Unit Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "c-205", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-206", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R57": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails", "longName": "9954506 - Disclosure - Stockholders' Equity and Stock-based Compensation - Summary of Stock-based Compensation Expense (Details)", "shortName": "Stockholders' Equity and Stock-based Compensation - Summary of Stock-based Compensation Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-221", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R58": { "role": "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationScheduleofRepurchaseAgreementsDetails", "longName": "9954507 - Disclosure - Stockholders' Equity and Stock-based Compensation - Schedule of Repurchase Agreements (Details)", "shortName": "Stockholders' Equity and Stock-based Compensation - Schedule of Repurchase Agreements (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "c-3", "name": "srt:StockRepurchaseProgramAuthorizedAmount1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "td", "tr", "table", "div", "qlys:ShareRepurchaseProgramTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "srt:StockRepurchaseProgramAuthorizedAmount1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "td", "tr", "table", "div", "qlys:ShareRepurchaseProgramTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.qualys.com/role/IncomeTaxesDetails", "longName": "9954508 - Disclosure - Income Taxes (Details)", "shortName": "Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:IncomeTaxExpenseBenefit", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R60": { "role": "http://www.qualys.com/role/SegmentandGeographicAreaInformationNarrativeDetails", "longName": "9954509 - Disclosure - Segment and Geographic Area Information - Narrative (Details)", "shortName": "Segment and Geographic Area Information - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails", "longName": "9954510 - Disclosure - Segment and Geographic Area Information - Revenue and Property and Equipment, Net by Geographic Area (Details)", "shortName": "Segment and Geographic Area Information - Revenue and Property and Equipment, Net by Geographic Area (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:NoncurrentAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R62": { "role": "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails", "longName": "9954511 - Disclosure - Net Income Per Share - Basic and Diluted Net Income Per Share (Details)", "shortName": "Net Income Per Share - Basic and Diluted Net Income Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "unique": true } }, "R63": { "role": "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails", "longName": "9954512 - Disclosure - Net Income Per Share - Anti-dilutive Net Income Per Share (Details)", "shortName": "Net Income Per Share - Anti-dilutive Net Income Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "qlys-20240930.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AOCIAttributableToParentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AOCIAttributableToParentAbstract", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassification of AOCI - Cash flow hedges", "label": "AOCI Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AOCIAttributableToParentNetOfTaxRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AOCIAttributableToParentNetOfTaxRollForward", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "AOCI Attributable to Parent, Net of Tax [Roll Forward]", "label": "AOCI Attributable to Parent, Net of Tax [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Accounting Policies [Abstract]", "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Accounts Payable, Current", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r43", "r724" ] }, "us-gaap_AccountsReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNet", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Carrying value of accounts receivable", "label": "Accounts Receivable, after Allowance for Credit Loss", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business." } } }, "auth_ref": [ "r607", "r660", "r742", "r969", "r970" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net of allowance of $1,154 and $778 as of September\u00a030, 2024 and December\u00a031, 2023, respectively", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r867" ] }, "us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccretionAmortizationOfDiscountsAndPremiumsInvestments", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Accretion of discount on marketable securities, net", "label": "Accretion (Amortization) of Discounts and Premiums, Investments", "documentation": "The sum of the periodic adjustments of the differences between securities' face values and purchase prices that are charged against earnings. This is called accretion if the security was purchased at a discount and amortization if it was purchased at premium. As a noncash item, this element is an adjustment to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r71" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued liabilities", "label": "Accrued Liabilities, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r45" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: accumulated depreciation and amortization", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r25", "r141", "r555" ] }, "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedGainLossNetCashFlowHedgeParentMember", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash Flow Hedges", "label": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]", "documentation": "Accumulated other comprehensive income (loss) from gain (loss) of derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent." } } }, "auth_ref": [ "r153", "r160", "r161", "r410", "r680", "r848" ] }, "us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedNetUnrealizedInvestmentGainLossMember", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Available-for-Sale Debt Securities", "label": "AOCI, Accumulated Gain (Loss), Debt Securities, Available-for-Sale, Parent [Member]", "documentation": "Accumulated unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), attributable to parent." } } }, "auth_ref": [ "r149", "r150", "r151", "r153", "r160", "r161", "r848" ] }, "qlys_AccumulatedOtherComprehensiveIncomeDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "AccumulatedOtherComprehensiveIncomeDisclosureTextBlock", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLoss" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Income (Loss)", "label": "Accumulated Other Comprehensive Income Disclosure [Text Block]", "documentation": "The entire note disclosure of accumulated other comprehensive income." } } }, "auth_ref": [] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Line Items]", "label": "Accumulated Other Comprehensive Income (Loss) [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r159", "r160", "r452", "r453", "r454", "r455", "r456", "r457" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated other comprehensive loss", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r16", "r17", "r58", "r146", "r552", "r574", "r575" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract", "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossTable", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Table]", "label": "Accumulated Other Comprehensive Income (Loss) [Table]", "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r159", "r160", "r452", "r453", "r454", "r455", "r456", "r457" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Income (Loss)", "verboseLabel": "Total", "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r1", "r9", "r17", "r415", "r418", "r469", "r570", "r571", "r848", "r849", "r850", "r855", "r856", "r857", "r858" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Additional 402(v) Disclosure", "label": "Additional 402(v) Disclosure [Text Block]" } } }, "auth_ref": [ "r786" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Additional paid-in capital", "label": "Additional Paid in Capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r53", "r724", "r1002" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Additional Paid-In Capital", "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r581", "r855", "r856", "r857", "r858", "r934", "r1003" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Compensation, Amount", "label": "Adjustment to Compensation Amount" } } }, "auth_ref": [ "r799" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Compensation:", "label": "Adjustment to Compensation [Axis]" } } }, "auth_ref": [ "r799" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote", "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]" } } }, "auth_ref": [ "r799" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment To PEO Compensation, Footnote", "label": "Adjustment To PEO Compensation, Footnote [Text Block]" } } }, "auth_ref": [ "r799" ] }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "negatedLabel": "Taxes related to net share settlement of equity awards", "label": "Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation", "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r28", "r29", "r347" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table", "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]" } } }, "auth_ref": [ "r832" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Erroneous Compensation Amount", "label": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r758", "r768", "r778", "r810" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined", "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]" } } }, "auth_ref": [ "r761", "r771", "r781", "r813" ] }, "ecd_AggtPnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtPnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Pension Adjustments Service Cost", "label": "Aggregate Pension Adjustments Service Cost [Member]" } } }, "auth_ref": [ "r833" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Adjustments to Compensation", "label": "All Adjustments to Compensation [Member]" } } }, "auth_ref": [ "r799" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Executive Categories", "label": "All Executive Categories [Member]" } } }, "auth_ref": [ "r806" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Individuals", "label": "All Individuals [Member]" } } }, "auth_ref": [ "r762", "r772", "r782", "r806", "r814", "r818", "r826" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "All Trading Arrangements", "label": "All Trading Arrangements [Member]" } } }, "auth_ref": [ "r824" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "verboseLabel": "Stock-based compensation", "label": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r376", "r378" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net of allowance", "label": "Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r147", "r228", "r262", "r265", "r267", "r970" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "AmendmentFlag", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Amendment Flag", "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfDeferredSalesCommissions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfDeferredSalesCommissions", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense related to deferred costs", "label": "Amortization of Deferred Sales Commissions", "documentation": "The amount of expense recognized in the current period for the periodic realization of capitalized fees that were paid to salespeople, distributors, brokers, and agents at the time of the conclusion of the sale. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r63" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible asset amortization expense", "label": "Amortization of Intangible Assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r283", "r290", "r696" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total anti-dilutive shares (in shares)", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r196" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities [Axis]", "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r20" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesNameDomain", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities, Name [Domain]", "label": "Antidilutive Securities, Name [Domain]", "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented." } } }, "auth_ref": [ "r20" ] }, "qlys_AssembledWorkforceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "AssembledWorkforceMember", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Assembled workforce", "label": "Assembled Workforce [Member]", "documentation": "Represents Assembled Workforce." } } }, "auth_ref": [] }, "us-gaap_AssetBackedSecuritiesAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetBackedSecuritiesAtCarryingValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialInstrumentsOwnedAtFairValue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset-backed securities", "label": "Asset-Backed Securities, at Carrying Value", "documentation": "Investments in notes or bonds that are collateralized by a specific group of underlying assets owned by the issuer of the notes or bonds which are 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. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "us-gaap_AssetBackedSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetBackedSecuritiesMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset-backed securities", "label": "Asset-Backed Securities [Member]", "documentation": "Securities that are primarily serviced by the cash flows of a discrete pool of receivables or other financial assets for example, but not limited to, credit card receivables, car loans, recreational vehicle loans, and mobile home loans." } } }, "auth_ref": [ "r702", "r725", "r870", "r873", "r874" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Assets", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r87", "r95", "r145", "r168", "r200", "r206", "r216", "r219", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r408", "r411", "r447", "r547", "r612", "r688", "r689", "r724", "r749", "r900", "r901", "r958" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Assets", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r137", "r148", "r168", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r408", "r411", "r447", "r724", "r900", "r901", "r958" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets:", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized Gains", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax", "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r233" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Unrealized Losses", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax", "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r234" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveThroughTenYearsAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterFiveThroughTenYearsAmortizedCost", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Due after Five Years through Ten Years", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, after Year 5 Through 10", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in sixth through tenth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r872" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsAmortizedCost", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Due after One Year through Five Years", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, after Year One Through Five", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r871" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleExcludingAccruedInterest", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Due after One Year through Five Years", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, after Year One Through Five", "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r238", "r543" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleExcludingAccruedInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Due within One Year", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One", "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r237", "r542" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithoutSingleMaturityDateAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithoutSingleMaturityDateAmortizedCost", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset-backed securities", "label": "Debt Securities, Available-for-Sale, Maturity, without Single Maturity Date, Amortized Cost", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), without single maturity date and not allocated over maturity grouping." } } }, "auth_ref": [ "r869", "r870" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithoutSingleMaturityDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithoutSingleMaturityDateFairValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleExcludingAccruedInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset-backed securities", "label": "Debt Securities, Available-for-Sale, Maturity, without Single Maturity Date, Fair Value", "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), without single maturity date and not allocated over maturity grouping." } } }, "auth_ref": [ "r236", "r541", "r869" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise Price", "label": "Award Exercise Price" } } }, "auth_ref": [ "r821" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value as of Grant Date", "label": "Award Grant Date Fair Value" } } }, "auth_ref": [ "r822" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]" } } }, "auth_ref": [ "r817" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing, How MNPI Considered", "label": "Award Timing, How MNPI Considered [Text Block]" } } }, "auth_ref": [ "r817" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing Method", "label": "Award Timing Method [Text Block]" } } }, "auth_ref": [ "r817" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing MNPI Considered", "label": "Award Timing MNPI Considered [Flag]" } } }, "auth_ref": [ "r817" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing MNPI Disclosure", "label": "Award Timing MNPI Disclosure [Text Block]" } } }, "auth_ref": [ "r817" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing Predetermined", "label": "Award Timing Predetermined [Flag]" } } }, "auth_ref": [ "r817" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Axis]", "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Securities", "label": "Award Underlying Securities Amount" } } }, "auth_ref": [ "r820" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Awards Close in Time to MNPI Disclosures, Individual Name" } } }, "auth_ref": [ "r819" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Awards Close in Time to MNPI Disclosures", "label": "Awards Close in Time to MNPI Disclosures [Table]" } } }, "auth_ref": [ "r818" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Awards Close in Time to MNPI Disclosures, Table", "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]" } } }, "auth_ref": [ "r818" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Basis of Presentation", "label": "Basis of Accounting, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Description of Business and Summary of Significant Accounting Policies", "label": "Basis of Presentation and Significant Accounting Policies [Text Block]", "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." } } }, "auth_ref": [ "r72" ] }, "qlys_BrucePoseyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "BrucePoseyMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Bruce Posey [Member]", "documentation": "Bruce Posey" } } }, "auth_ref": [] }, "us-gaap_CapitalizedContractCostImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CapitalizedContractCostImpairmentLoss", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment loss related to deferred contract costs", "label": "Capitalized Contract Cost, Impairment Loss", "documentation": "Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer." } } }, "auth_ref": [ "r278" ] }, "us-gaap_CapitalizedContractCostNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CapitalizedContractCostNetCurrent", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersCapitalizedCosttoObtainContractsCurrentandNoncurrentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current", "label": "Capitalized Contract Cost, Net, Current", "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer; classified as current." } } }, "auth_ref": [ "r277" ] }, "us-gaap_CapitalizedContractCostNetNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CapitalizedContractCostNetNoncurrent", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersCapitalizedCosttoObtainContractsCurrentandNoncurrentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Noncurrent", "label": "Capitalized Contract Cost, Net, Noncurrent", "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer; classified as noncurrent." } } }, "auth_ref": [ "r277" ] }, "us-gaap_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Cash", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash, excluded", "label": "Cash", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r101", "r549", "r582", "r606", "r724", "r749", "r845" ] }, "qlys_CashAndCashEquivalentsAndDebtSecuritiesAvailableForSaleAmortizedCostToFairValueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "CashAndCashEquivalentsAndDebtSecuritiesAvailableForSaleAmortizedCostToFairValueTableTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Cash Equivalents and Marketable Securities", "label": "Cash And Cash Equivalents And Debt Securities, Available-For-Sale, Amortized Cost To Fair Value [Table Text Block]", "documentation": "Tabular disclosure of cash and cash equivalents and debt securities available-for-sale amortized cost to fair value." } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "label": "Cash and Cash Equivalents, at Carrying Value", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r19", "r139", "r678" ] }, "us-gaap_CashAndCashEquivalentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and Cash Equivalents [Axis]", "label": "Cash and Cash Equivalents [Axis]", "documentation": "Information by type of cash and cash equivalent balance." } } }, "auth_ref": [ "r139" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash, cash equivalents and restricted cash at beginning of period", "periodEndLabel": "Cash, cash equivalents and restricted cash at end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r19", "r69", "r167" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net increase in cash, cash equivalents and restricted cash", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r0", "r69" ] }, "us-gaap_CashEquivalentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashEquivalentsMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash equivalents", "label": "Cash Equivalents [Member]", "documentation": "Short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r139" ] }, "us-gaap_CashFlowHedgingMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashFlowHedgingMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash Flow Hedging", "label": "Cash Flow Hedging [Member]", "documentation": "Hedge of the exposure to variability in the cash flows of a recognized asset or liability, or of a forecasted transaction, that is attributable to a particular risk." } } }, "auth_ref": [ "r33" ] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Changed Peer Group, Footnote", "label": "Changed Peer Group, Footnote [Text Block]" } } }, "auth_ref": [ "r797" ] }, "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year", "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]" } } }, "auth_ref": [ "r794" ] }, "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested", "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]" } } }, "auth_ref": [ "r792" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CityAreaCode", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Company Selected Measure Amount", "label": "Company Selected Measure Amount" } } }, "auth_ref": [ "r798" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Company Selected Measure Name", "label": "Company Selected Measure Name" } } }, "auth_ref": [ "r798" ] }, "us-gaap_CommercialPaperAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommercialPaperAtCarryingValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialInstrumentsOwnedAtFairValue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Commercial paper", "label": "Commercial Paper, at Carrying Value", "documentation": "Unsecured short-term debt instrument issued by corporations which are 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. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "us-gaap_CommercialPaperMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommercialPaperMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Commercial paper", "label": "Commercial Paper [Member]", "documentation": "Unsecured promissory note (generally negotiable) that provides institutions with short-term funds." } } }, "auth_ref": [ "r77", "r308", "r743", "r744", "r745", "r746" ] }, "us-gaap_CommercialPaperNotIncludedWithCashAndCashEquivalentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommercialPaperNotIncludedWithCashAndCashEquivalentsMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Commercial paper", "label": "Commercial Paper, Not Included with Cash and Cash Equivalents [Member]", "documentation": "Unsecured promissory note (generally negotiable) that provides institutions with short-term funds that is excluded from cash and cash equivalents." } } }, "auth_ref": [ "r905" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and contingencies (Note 8)", "label": "Commitments and Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r49", "r88", "r548", "r597" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.qualys.com/role/CommitmentsandContingencies" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies", "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r76", "r302", "r303", "r661", "r897", "r899" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r739", "r740", "r741", "r743", "r744", "r745", "r746", "r855", "r856", "r858", "r934", "r1001", "r1003" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, par value (in USD per share)", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r52" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares authorized (in shares)", "label": "Common Stock, Shares Authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r52", "r598" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares issued (in shares)", "label": "Common Stock, Shares, Issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r52" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares outstanding (in shares)", "label": "Common Stock, Shares, Outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r10", "r52", "r598", "r618", "r1003", "r1004" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock: $0.001 par value; 1,000,000 shares authorized, 36,640 and 36,909 shares issued and outstanding as of September\u00a030, 2024 and December\u00a031, 2023, respectively", "label": "Common Stock, Value, Issued", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r52", "r551", "r724" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Company Selected Measure", "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]" } } }, "auth_ref": [ "r803" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Net Income", "label": "Compensation Actually Paid vs. Net Income [Text Block]" } } }, "auth_ref": [ "r802" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Other Measure", "label": "Compensation Actually Paid vs. Other Measure [Text Block]" } } }, "auth_ref": [ "r804" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return", "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]" } } }, "auth_ref": [ "r801" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "totalLabel": "Comprehensive income", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r18", "r156", "r158", "r162", "r538", "r561", "r562" ] }, "us-gaap_ComputerEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComputerEquipmentMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Computer equipment", "label": "Computer Equipment [Member]", "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems." } } }, "auth_ref": [] }, "us-gaap_ComputerSoftwareIntangibleAssetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComputerSoftwareIntangibleAssetMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Computer software", "label": "Computer Software, Intangible Asset [Member]", "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." } } }, "auth_ref": [ "r674", "r676", "r885", "r887", "r888", "r889", "r890", "r891", "r894", "r895" ] }, "qlys_ContractWithCustomerCommissionAssetBalancesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ContractWithCustomerCommissionAssetBalancesTableTextBlock", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Deferred Costs to Obtain Contracts", "label": "Contract With Customer, Commission Asset Balances [Table Text Block]", "documentation": "Tabular disclosure of commission asset balance of contract with customer." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiability", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue", "label": "Contract with Customer, Liability", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r323", "r324", "r335" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets", "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenues, current", "label": "Contract with Customer, Liability, Current", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r323", "r324", "r335" ] }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets", "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenues, noncurrent", "label": "Contract with Customer, Liability, Noncurrent", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent." } } }, "auth_ref": [ "r323", "r324", "r335" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from contract with customer, revenue recognized", "label": "Contract with Customer, Liability, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r336" ] }, "us-gaap_ContractWithCustomerSalesChannelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerSalesChannelAxis", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract with Customer, Sales Channel [Axis]", "label": "Contract with Customer, Sales Channel [Axis]", "documentation": "Information by sales channel for delivery of good or service in contract with customer." } } }, "auth_ref": [ "r701", "r904" ] }, "us-gaap_ContractWithCustomerSalesChannelDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerSalesChannelDomain", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract with Customer, Sales Channel [Domain]", "label": "Contract with Customer, Sales Channel [Domain]", "documentation": "Sales channel for delivery of good or service in contract with customer. Includes, but is not limited to, directly to consumer and through intermediary." } } }, "auth_ref": [ "r701", "r904" ] }, "us-gaap_CorporateDebtSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CorporateDebtSecuritiesMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Corporate bonds", "label": "Corporate Debt Securities [Member]", "documentation": "Debt securities issued by domestic or foreign corporate business, banks and other entities with a promise of repayment." } } }, "auth_ref": [ "r702", "r704", "r712", "r725", "r737", "r998" ] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenues", "negatedTerseLabel": "Cost of revenues", "label": "Cost of Revenue", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r61", "r168", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r447", "r688", "r900" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfSalesMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenues", "label": "Cost of Sales [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cover [Abstract]", "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Current Fiscal Year End Date", "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAbstract", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total", "label": "Debt Securities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Amortized Cost", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Excluding Accrued Interest, after Allowance for Credit Loss", "documentation": "Amortized cost excluding accrued interest, after allowance for credit loss, of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r881" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossNoncurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term marketable securities", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Excluding Accrued Interest, after Allowance for Credit Loss, Noncurrent", "documentation": "Amortized cost excluding accrued interest, after allowance for credit loss, of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as noncurrent." } } }, "auth_ref": [ "r881" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for more than 12 months, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r99", "r274", "r694" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Gross Unrealized Losses", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer, Accumulated Loss", "documentation": "Amount of accumulated unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for 12 months or longer, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r99", "r274" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for less than 12 months, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r99", "r274", "r694" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Gross Unrealized Losses", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months, Accumulated Loss", "documentation": "Amount of accumulated unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for less than 12 months, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r99", "r274" ] }, "us-gaap_DebtSecuritiesAvailableForSaleExcludingAccruedInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleExcludingAccruedInterest", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLoss", "weight": 1.0, "order": 3.0 }, "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value", "totalLabel": "Fair Value", "label": "Debt Securities, Available-for-Sale, Excluding Accrued Interest", "documentation": "Amount excluding accrued interest, of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r881" ] }, "us-gaap_DebtSecuritiesAvailableForSaleExcludingAccruedInterestCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleExcludingAccruedInterestCurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term marketable securities", "label": "Debt Securities, Available-for-Sale, Excluding Accrued Interest, Current", "documentation": "Amount excluding accrued interest, of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current." } } }, "auth_ref": [ "r881" ] }, "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleUnrealizedLossPosition", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Fair Value", "label": "Debt Securities, Available-for-Sale, Unrealized Loss Position", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in unrealized loss position without allowance for credit loss." } } }, "auth_ref": [ "r97", "r272", "r694" ] }, "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Gross Unrealized Losses", "label": "Debt Securities, Available-for-Sale, Unrealized Loss Position, Accumulated Loss", "documentation": "Amount of accumulated unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in unrealized loss position, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r98", "r273" ] }, "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionFairValueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleUnrealizedLossPositionFairValueTableTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Gross Unrealized Losses and Fair Value of Marketable Securities in an Unrealized Loss Position", "label": "Debt Securities, Available-for-Sale, Unrealized Loss Position, Fair Value [Table Text Block]", "documentation": "Tabular disclosure of fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in unrealized loss position, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r96", "r694", "r882" ] }, "us-gaap_DebtSecuritiesAvailableforsaleAmortizedCostAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableforsaleAmortizedCostAbstract", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized Cost", "label": "Debt Securities, Available-for-Sale, Amortized Cost [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesCurrentAbstract", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Less than 12 months", "label": "Debt Securities, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesHeldToMaturityFairValueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesHeldToMaturityFairValueAbstract", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryoftheFairValueofMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value", "label": "Debt Securities, Held-to-Maturity, Fair Value [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesNoncurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesNoncurrentAbstract", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "12 months or longer", "label": "Debt Securities, Noncurrent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred tax assets, net", "label": "Deferred Income Tax Assets, Net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r383", "r384" ] }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxesAndTaxCredits", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income taxes", "label": "Deferred Income Taxes and Tax Credits", "documentation": "Amount of deferred income tax expense (benefit) and income tax credits." } } }, "auth_ref": [ "r71" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization expense", "label": "Depreciation, Depletion and Amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r7", "r200", "r210", "r219", "r688", "r689" ] }, "qlys_DepreciationDepletionAndAmortizationExcludingIntangibleAssetAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "DepreciationDepletionAndAmortizationExcludingIntangibleAssetAmortization", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization", "label": "qlys_DepreciationDepletionAndAmortizationExcludingIntangibleAssetAmortization", "documentation": "Represents amount of depreciation, depletion and amortization excluding intangible asset amortization." } } }, "auth_ref": [] }, "us-gaap_DerivativeContractTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeContractTypeDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Contract [Domain]", "label": "Derivative Contract [Domain]", "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." } } }, "auth_ref": [ "r587", "r589", "r603", "r604", "r605", "r608", "r609", "r610", "r611", "r613", "r614", "r615", "r616", "r626", "r627", "r628", "r629", "r632", "r633", "r634", "r635", "r649", "r650", "r651", "r652", "r739", "r741", "r941", "r942", "r943", "r944", "r945", "r946", "r948", "r949" ] }, "us-gaap_DerivativeInstrumentRiskAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeInstrumentRiskAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instrument [Axis]", "label": "Derivative Instrument [Axis]", "documentation": "Information by type of derivative contract." } } }, "auth_ref": [ "r35", "r37", "r39", "r86", "r587", "r589", "r603", "r604", "r605", "r608", "r609", "r610", "r611", "r613", "r614", "r615", "r616", "r626", "r627", "r628", "r629", "r632", "r633", "r634", "r635", "r649", "r650", "r651", "r652", "r679", "r739", "r741", "r941", "r942", "r943", "r944", "r945", "r946", "r948", "r949" ] }, "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Relationship [Axis]", "label": "Hedging Relationship [Axis]", "documentation": "Information by type of hedging relationship." } } }, "auth_ref": [ "r11", "r35", "r37" ] }, "us-gaap_DerivativeNotionalAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeNotionalAmount", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative", "label": "Derivative, Notional Amount", "documentation": "Nominal or face amount used to calculate payment on derivative." } } }, "auth_ref": [ "r932", "r933" ] }, "us-gaap_DesignatedAsHedgingInstrumentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DesignatedAsHedgingInstrumentMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Designated as Hedging Instrument", "label": "Designated as Hedging Instrument [Member]", "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP)." } } }, "auth_ref": [ "r11" ] }, "us-gaap_DevelopedTechnologyRightsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DevelopedTechnologyRightsMember", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Developed technology", "label": "Developed Technology Rights [Member]", "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property." } } }, "auth_ref": [ "r83", "r885", "r887", "r888", "r889", "r890", "r891", "r894", "r895" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenue by Sales Channel", "label": "Disaggregation of Revenue [Table Text Block]", "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." } } }, "auth_ref": [ "r904" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Period Focus", "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Year Focus", "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Period End Date", "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Quarterly Report", "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r753" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentTransitionReport", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Transition Report", "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r785" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentType", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Type", "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year", "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]" } } }, "auth_ref": [ "r796" ] }, "qlys_ESPPSharesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ESPPSharesMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "ESPP Shares", "label": "ESPP Shares [Member]", "documentation": "Represents information regarding ESPP shares." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Net income per share:", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (in USD per share)", "label": "Earnings Per Share, Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r163", "r175", "r176", "r177", "r178", "r179", "r180", "r185", "r187", "r193", "r194", "r195", "r199", "r404", "r407", "r422", "r423", "r539", "r563", "r682" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (in USD per share)", "label": "Earnings Per Share, Diluted", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r163", "r175", "r176", "r177", "r178", "r179", "r180", "r187", "r193", "r194", "r195", "r199", "r404", "r407", "r422", "r423", "r539", "r563", "r682" ] }, "us-gaap_EarningsPerShareReconciliationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareReconciliationAbstract", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net income per share:", "label": "Earnings Per Share Reconciliation [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.qualys.com/role/NetIncomePerShare" ], "lang": { "en-us": { "role": { "terseLabel": "Net Income Per Share", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r184", "r196", "r197", "r198" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://www.qualys.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax rate, percentage", "label": "Effective Income Tax Rate Reconciliation, Percent", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r386", "r710" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation expenses, unrecognized", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r377" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation, recognition period (in years)", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r377" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock options", "label": "Share-Based Payment Arrangement, Option [Member]", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "qlys_EmployeeStockPurchasePlanPercentageOfEligibleCompensationContributable": { "xbrltype": "percentItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "EmployeeStockPurchasePlanPercentageOfEligibleCompensationContributable", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "ESPP eligible percent to contribute", "label": "qlys_EmployeeStockPurchasePlanPercentageOfEligibleCompensationContributable", "documentation": "Represents the percentage of employee's eligible compensation that can be used to contribute, through payroll withholding, to an employee stock purchase plan." } } }, "auth_ref": [] }, "qlys_EmployeeStockPurchasePlanSharesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "EmployeeStockPurchasePlanSharesMember", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Employee stock purchase plan", "label": "Employee Stock Purchase Plan Shares [Member]", "documentation": "Represents information regarding employee stock purchase plan shares." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line One", "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, City or Town", "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Postal Zip Code", "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, State or Province", "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Central Index Key", "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r751" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Common Stock, Shares Outstanding", "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Current Reporting Status", "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r751" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFileNumber", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFilerCategory", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Filer Category", "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r751" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Incorporation, State or Country Code", "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Interactive Data Current", "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r835" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityRegistrantName", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Registrant Name", "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r751" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityShellCompany", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Shell Company", "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r751" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntitySmallBusiness", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Small Business", "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r751" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Tax Identification Number", "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r751" ] }, "ecd_EqtyAwrdsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Awards Adjustments, Footnote", "label": "Equity Awards Adjustments, Footnote [Text Block]" } } }, "auth_ref": [ "r790" ] }, "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table", "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]" } } }, "auth_ref": [ "r831" ] }, "ecd_EqtyAwrdsAdjsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Awards Adjustments", "label": "Equity Awards Adjustments [Member]" } } }, "auth_ref": [ "r831" ] }, "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table", "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]" } } }, "auth_ref": [ "r831" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component [Domain]", "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r10", "r135", "r159", "r160", "r161", "r170", "r171", "r172", "r174", "r179", "r181", "r183", "r201", "r260", "r261", "r298", "r322", "r394", "r395", "r401", "r402", "r403", "r405", "r406", "r407", "r414", "r415", "r416", "r417", "r418", "r419", "r421", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r469", "r559", "r570", "r571", "r572", "r581", "r639" ] }, "us-gaap_EquitySecuritiesFvNiUnrealizedGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquitySecuritiesFvNiUnrealizedGainLoss", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Loss on non-marketable securities", "label": "Equity Securities, FV-NI, Unrealized Gain (Loss)", "documentation": "Amount of unrealized gain (loss) on investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI)." } } }, "auth_ref": [ "r564", "r879" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Valuation Assumption Difference, Footnote", "label": "Equity Valuation Assumption Difference, Footnote [Text Block]" } } }, "auth_ref": [ "r800" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Erroneous Compensation Analysis", "label": "Erroneous Compensation Analysis [Text Block]" } } }, "auth_ref": [ "r758", "r768", "r778", "r810" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Erroneously Awarded Compensation Recovery", "label": "Erroneously Awarded Compensation Recovery [Table]" } } }, "auth_ref": [ "r755", "r765", "r775", "r807" ] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Category:", "label": "Executive Category [Axis]" } } }, "auth_ref": [ "r806" ] }, "qlys_ExecutiveOfficer1Member": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ExecutiveOfficer1Member", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Officer 1", "label": "Executive Officer 1 [Member]", "documentation": "Represents executive officer 1." } } }, "auth_ref": [] }, "qlys_ExecutiveOfficer2Member": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ExecutiveOfficer2Member", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Officer 2", "label": "Executive Officer 2 [Member]", "documentation": "Represents executive officer 2." } } }, "auth_ref": [] }, "qlys_ExecutiveOfficer3Member": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ExecutiveOfficer3Member", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Officer 3", "label": "Executive Officer 3 [Member]", "documentation": "Represents executive officer 3." } } }, "auth_ref": [] }, "qlys_ExecutiveOfficer4Member": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ExecutiveOfficer4Member", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Officer 4", "label": "Executive Officer 4 [Member]", "documentation": "Represents executive 4." } } }, "auth_ref": [] }, "srt_ExecutiveOfficerMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ExecutiveOfficerMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Officer", "label": "Executive Officer [Member]", "documentation": "Person with designation of executive officer." } } }, "auth_ref": [ "r866" ] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Fair Value of Financial Assets and Liabilities Measured on Recurring Basis", "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]", "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)." } } }, "auth_ref": [ "r936", "r937" ] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset Class [Domain]", "label": "Asset Class [Domain]", "documentation": "Class of asset." } } }, "auth_ref": [ "r430", "r431", "r432", "r433", "r434", "r435", "r440", "r714" ] }, "us-gaap_FairValueByAssetClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByAssetClassAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset Class [Axis]", "label": "Asset Class [Axis]", "documentation": "Information by class of asset." } } }, "auth_ref": [ "r430", "r431", "r432", "r433", "r434", "r435", "r440", "r714" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Axis]", "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r318", "r339", "r340", "r341", "r342", "r343", "r344", "r424", "r426", "r427", "r428", "r429", "r438", "r439", "r441", "r473", "r474", "r475", "r697", "r698", "r702", "r703", "r704", "r712", "r716" ] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Measurement Frequency [Axis]", "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r425", "r426", "r427", "r429", "r712", "r939", "r950" ] }, "us-gaap_FairValueDisclosureAssetAndLiabilityNotMeasuredAtFairValueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosureAssetAndLiabilityNotMeasuredAtFairValueLineItems", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]", "label": "Fair Value Disclosure, Asset and Liability, Not Measured at Fair Value [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r438" ] }, "us-gaap_FairValueDisclosureOfAssetAndLiabilityNotMeasuredAtFairValueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosureOfAssetAndLiabilityNotMeasuredAtFairValueTable", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Disclosure of Asset and Liability Not Measured at Fair Value [Table]", "label": "Fair Value Disclosure of Asset and Liability Not Measured at Fair Value [Table]", "documentation": "Disclosure of information about fair value of asset and liability not measured at fair value." } } }, "auth_ref": [ "r438" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstruments" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value of Financial Instruments", "label": "Fair Value Disclosures [Text Block]", "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." } } }, "auth_ref": [ "r434", "r436", "r437", "r438", "r441", "r442", "r443", "r444", "r445", "r536", "r712", "r717" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Level 1", "label": "Fair Value, Inputs, Level 1 [Member]", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r318", "r339", "r344", "r426", "r439", "r473", "r702", "r703", "r704", "r712" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Level 2", "label": "Fair Value, Inputs, Level 2 [Member]", "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." } } }, "auth_ref": [ "r318", "r339", "r344", "r426", "r427", "r439", "r474", "r697", "r698", "r702", "r703", "r704", "r712" ] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Measurement Frequency [Domain]", "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [ "r425", "r426", "r427", "r429", "r712", "r939", "r950" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Domain]", "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r318", "r339", "r340", "r341", "r342", "r343", "r344", "r424", "r426", "r427", "r428", "r429", "r438", "r439", "r441", "r473", "r474", "r475", "r697", "r698", "r702", "r703", "r704", "r712", "r716" ] }, "us-gaap_FairValueMeasurementsRecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsRecurringMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Recurring", "label": "Fair Value, Recurring [Member]", "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value." } } }, "auth_ref": [ "r712", "r936", "r937", "r938", "r939", "r940", "r950" ] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instrument [Axis]", "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r263", "r264", "r268", "r269", "r270", "r271", "r275", "r276", "r319", "r321", "r420", "r446", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r486", "r487", "r488", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r560", "r694", "r712", "r714", "r716", "r717", "r718", "r719", "r720", "r721", "r722", "r725", "r838", "r839", "r840", "r841", "r842", "r843", "r844", "r875", "r876", "r877", "r878", "r935", "r938", "r939", "r940", "r947", "r950" ] }, "us-gaap_FinancialInstrumentsOwnedAtFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialInstrumentsOwnedAtFairValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Financial Instruments, Owned, at Fair Value", "documentation": "The aggregate fair value as of the balance sheet date of financial instruments and other positions owned by the entity including: (1) mortgages, mortgage-backed and asset backed securities; (2) US government and agency obligations; (3) state and municipal government obligations; (4) other sovereign government debt; (5) corporate obligations; (6) corporate equities; (7) principal investments; (8) derivative contracts; and (9) physical commodities. Includes both pledged and unpledged holdings." } } }, "auth_ref": [ "r967" ] }, "us-gaap_FinancialInstrumentsOwnedCorporateDebtAtFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialInstrumentsOwnedCorporateDebtAtFairValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialInstrumentsOwnedAtFairValue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Corporate bonds", "label": "Financial Instruments, Owned, Corporate Debt, at Fair Value", "documentation": "Fair value of firm holdings in corporate fixed income securities. Includes pledged and unpledged holdings." } } }, "auth_ref": [ "r967" ] }, "us-gaap_FinancialInstrumentsOwnedDerivativesAndOtherContractualAgreementsAtFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialInstrumentsOwnedDerivativesAndOtherContractualAgreementsAtFairValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialInstrumentsOwnedAtFairValue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency forward contracts", "label": "Financial Instruments, Owned, Derivatives and Other Contractual Agreements, at Fair Value", "documentation": "The fair value as of the balance sheet date of firm holdings in all assets resulting from contracts that meet the criteria of being accounted for as derivative instruments. Their value is derived from the values of one or more underlying assets, reference rates, or indices of asset values. Includes both pledged (to counterparties as collateral for financing transactions) and unpledged holdings." } } }, "auth_ref": [ "r85" ] }, "us-gaap_FinancialLiabilitiesFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialLiabilitiesFairValueDisclosure", "crdr": "credit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "label": "Financial Liabilities Fair Value Disclosure", "documentation": "Fair value of financial obligations, including, but not limited to, debt instruments, derivative liabilities, federal funds purchased and sold under agreements to repurchase, securities loaned or sold under agreements to repurchase, financial instruments sold not yet purchased, guarantees, line of credit, loans and notes payable, servicing liability, and trading liabilities." } } }, "auth_ref": [ "r936", "r937", "r947" ] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted Average Life (Years)", "label": "Finite-Lived Intangible Asset, Useful Life", "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Accumulated Amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r143", "r279", "r289", "r696" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r291", "r674", "r696" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024 (remaining three months)", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "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." } } }, "auth_ref": [ "r1009" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r291", "r674", "r696" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r291", "r674", "r696" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r282", "r284", "r285", "r286", "r288", "r289", "r293", "r294", "r504", "r505", "r674" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost", "label": "Finite-Lived Intangible Assets, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r279", "r289", "r505", "r696" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets [Line Items]", "label": "Finite-Lived Intangible Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r282", "r289", "r293", "r294", "r296", "r504", "r674", "r696" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r282", "r284", "r285", "r286", "r288", "r289", "r293", "r294", "r674" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails": { "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0, "order": 2.0 }, "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails", "http://www.qualys.com/role/IntangibleAssetsNetExpectedAmortizationExpenseinFuturePeriodsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total intangibles", "label": "Finite-Lived Intangible Assets, Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r504", "r891" ] }, "us-gaap_ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Unrealized loss", "label": "Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months", "documentation": "The estimated net amount of unrealized gains or losses on foreign currency cash flow hedges at the reporting date expected to be reclassified to earnings within the next 12 months." } } }, "auth_ref": [ "r42" ] }, "us-gaap_ForeignCurrencyContractAssetFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignCurrencyContractAssetFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency forward contracts, asset", "label": "Foreign Currency Contract, Asset, Fair Value Disclosure", "documentation": "Fair value portion of asset contracts related to the exchange of different currencies, including, but not limited to, foreign currency options, forward contracts, and swaps." } } }, "auth_ref": [ "r425", "r426" ] }, "us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignCurrencyContractsLiabilityFairValueDisclosure", "crdr": "credit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialLiabilitiesFairValueDisclosure", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency forward contracts", "verboseLabel": "Foreign currency forward contracts, liability", "label": "Foreign Currency Contracts, Liability, Fair Value Disclosure", "documentation": "Fair value portion of liability contracts related to the exchange of different currencies, including, but not limited to, foreign currency options, forward (delivery or nondelivery) contracts, and swaps entered into." } } }, "auth_ref": [ "r425", "r426" ] }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total foreign exchange gains (losses), net", "label": "Gain (Loss), Foreign Currency Transaction, before Tax", "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction." } } }, "auth_ref": [ "r448", "r449", "r450", "r451", "r636" ] }, "us-gaap_ForeignExchangeContractMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignExchangeContractMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Exchange Contract", "label": "Foreign Exchange Contract [Member]", "documentation": "Derivative instrument whose primary underlying risk is tied to foreign exchange rates." } } }, "auth_ref": [ "r679", "r702", "r711", "r712" ] }, "qlys_ForeignExchangeContractsForGBPAndEuroMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ForeignExchangeContractsForGBPAndEuroMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Exchange Contracts for GBP and Euro", "label": "Foreign Exchange Contracts for GBP and Euro [Member]", "documentation": "Information related to foreign exchange contracts for BPG and Euro." } } }, "auth_ref": [] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r762", "r772", "r782", "r814" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount", "label": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r762", "r772", "r782", "r814" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount", "label": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r762", "r772", "r782", "r814" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery, Explanation of Impracticability", "label": "Forgone Recovery, Explanation of Impracticability [Text Block]" } } }, "auth_ref": [ "r762", "r772", "r782", "r814" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Forgone Recovery, Individual Name" } } }, "auth_ref": [ "r762", "r772", "r782", "r814" ] }, "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year", "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]" } } }, "auth_ref": [ "r795" ] }, "us-gaap_FurnitureAndFixturesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FurnitureAndFixturesMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Furniture, fixtures and equipment", "label": "Furniture and Fixtures [Member]", "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases." } } }, "auth_ref": [] }, "us-gaap_GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments", "crdr": "credit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails": { "parentTag": "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net gains (losses) from non-designated forward contracts", "label": "Gain (Loss) on Foreign Currency Derivative Instruments Not Designated as Hedging Instruments", "documentation": "Amount of gain (loss) recognized in earnings in the period from the increase (decrease) in fair value of foreign currency derivatives not designated as hedging instruments." } } }, "auth_ref": [ "r35", "r38" ] }, "us-gaap_GeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "General and administrative", "negatedTerseLabel": "General and administrative", "label": "General and Administrative Expense", "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line." } } }, "auth_ref": [ "r64", "r622" ] }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeneralAndAdministrativeExpenseMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "General and administrative", "label": "General and Administrative Expense [Member]", "documentation": "Primary financial statement caption encompassing general and administrative expense." } } }, "auth_ref": [ "r64" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "label": "Goodwill", "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r142", "r280", "r537", "r689", "r695", "r713", "r724", "r883", "r884" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r59", "r61", "r94", "r168", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r447", "r684", "r688", "r860", "r862", "r863", "r864", "r865", "r900" ] }, "us-gaap_HedgingDesignationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "HedgingDesignationAxis", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Axis]", "label": "Hedging Designation [Axis]", "documentation": "Information by designation of purpose of derivative instrument." } } }, "auth_ref": [ "r11", "r413" ] }, "us-gaap_HedgingDesignationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "HedgingDesignationDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Domain]", "label": "Hedging Designation [Domain]", "documentation": "Designation of purpose of derivative instrument." } } }, "auth_ref": [ "r11" ] }, "us-gaap_HedgingRelationshipDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "HedgingRelationshipDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Relationship [Domain]", "label": "Hedging Relationship [Domain]", "documentation": "Nature or intent of a hedge." } } }, "auth_ref": [ "r11" ] }, "country_IN": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "IN", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "India", "label": "INDIA" } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Income before income taxes", "terseLabel": "Total", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r60", "r90", "r94", "r540", "r557", "r684", "r688", "r860", "r862", "r863", "r864", "r865" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Axis]", "label": "Statement of Income Location, Balance [Axis]", "documentation": "Information by location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r299", "r300", "r301", "r431", "r435", "r440", "r567", "r569", "r623", "r674", "r715", "r972" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Domain]", "label": "Statement of Income Location, Balance [Domain]", "documentation": "Location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r300", "r301", "r431", "r435", "r440", "r567", "r569", "r623", "r674", "r715", "r972" ] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.qualys.com/role/IncomeTaxes" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes", "label": "Income Tax Disclosure [Text Block]", "documentation": "The entire disclosure for income tax." } } }, "auth_ref": [ "r169", "r381", "r386", "r387", "r388", "r389", "r392", "r393", "r396", "r398", "r399", "r400", "r580", "r710" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax provision", "label": "Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r100", "r112", "r182", "r183", "r200", "r211", "r219", "r385", "r386", "r397", "r565", "r710" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Increase (Decrease) in Accounts Payable", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Accounts receivable", "label": "Increase (Decrease) in Accounts Receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued liabilities and other noncurrent liabilities", "label": "Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities", "documentation": "Amount of increase (decrease) in accrued expenses, and obligations classified as other." } } }, "auth_ref": [ "r852" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenues", "label": "Increase (Decrease) in Contract with Customer, Liability", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r502", "r852" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in operating assets and liabilities:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Prepaid expenses and other assets", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncrementalCommonSharesAttributableToCallOptionsAndWarrants", "calculation": { "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Retired stock units (in shares)", "label": "Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants", "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." } } }, "auth_ref": [ "r188", "r189", "r190", "r195" ] }, "us-gaap_IncrementalCommonSharesAttributableToEquityUnitPurchaseAgreements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncrementalCommonSharesAttributableToEquityUnitPurchaseAgreements", "calculation": { "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Employee stock purchase plan (in shares)", "label": "Incremental Common Shares Attributable to Dilutive Effect of Equity Unit Purchase Agreements", "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." } } }, "auth_ref": [ "r188", "r189", "r195" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "calculation": { "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock options (in shares)", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r188", "r189", "r191", "r195", "r349" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-Lived Intangible Assets [Axis]", "label": "Indefinite-Lived Intangible Assets [Axis]", "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r282", "r287", "r292", "r696" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails": { "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets not subject to amortization", "label": "Indefinite-Lived Intangible Assets (Excluding Goodwill)", "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r279", "r292", "r696" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]", "label": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. 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 the company." } } }, "auth_ref": [ "r282", "r287", "r292", "r696" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Individual:", "label": "Individual [Axis]" } } }, "auth_ref": [ "r762", "r772", "r782", "r806", "r814", "r818", "r826" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "auth_ref": [ "r824" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]" } } }, "auth_ref": [ "r754", "r830" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "terseLabel": "Insider Trading Policies and Procedures Adopted", "label": "Insider Trading Policies and Procedures Adopted [Flag]" } } }, "auth_ref": [ "r754", "r830" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "terseLabel": "Insider Trading Policies and Procedures Not Adopted", "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]" } } }, "auth_ref": [ "r754", "r830" ] }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNet" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible Assets, Net", "label": "Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for all or part of the information related to intangible assets." } } }, "auth_ref": [ "r281", "r295", "r297", "r673", "r674" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 }, "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets", "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, net", "totalLabel": "Intangible assets, net", "label": "Intangible Assets, Net (Excluding Goodwill)", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r282", "r891", "r893" ] }, "qlys_IntangibleAssetsNotSubjectToAmortizationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "IntangibleAssetsNotSubjectToAmortizationMember", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets not subject to amortization", "label": "Intangible Assets Not Subject to Amortization [Member]", "documentation": "Represents intangible assets not subject to amortization." } } }, "auth_ref": [] }, "us-gaap_InvestmentIncomeInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentIncomeInterest", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Interest income", "label": "Investment Income, Interest", "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities." } } }, "auth_ref": [ "r200", "r209", "r219", "r688", "r851" ] }, "us-gaap_Investments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Investments", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investments", "label": "Investments", "documentation": "Sum of the carrying amounts as of the balance sheet date of all investments." } } }, "auth_ref": [ "r545", "r546", "r736", "r738" ] }, "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of the Fair Value of Cash Equivalents and Marketable Securities by Contractual Maturity", "label": "Investments Classified by Contractual Maturity Date [Table Text Block]", "documentation": "Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments." } } }, "auth_ref": [] }, "qlys_JeffreyP.HankMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "JeffreyP.HankMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Jeffrey P. Hank [Member]", "documentation": "Jeffrey P. Hank" } } }, "auth_ref": [] }, "qlys_JooMiKimMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "JooMiKimMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Joo Mi Kim [Member]", "documentation": "Joo Mi Kim" } } }, "auth_ref": [] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.qualys.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Lease Cost", "label": "Lease, Cost [Table Text Block]", "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income." } } }, "auth_ref": [ "r955" ] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Leasehold improvements", "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r75", "r468" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "label": "Leases [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.qualys.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Lease Maturities", "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r956" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total minimum lease payments", "label": "Lessee, Operating Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r467" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r467" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r467" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r467" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r467" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024 (remaining three months)", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "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." } } }, "auth_ref": [ "r956" ] }, "qlys_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2029 and thereafter", "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Four", "documentation": "Lessee, Operating Lease, Liability, to be Paid, after Year Four" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Less: interest", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r467" ] }, "qlys_LesseeOperatingLeasesAndFinanceLeaseTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "LesseeOperatingLeasesAndFinanceLeaseTextBlock", "presentation": [ "http://www.qualys.com/role/Leases" ], "lang": { "en-us": { "role": { "terseLabel": "Leases", "label": "Lessee, Operating Leases and Finance Lease [Text Block]", "documentation": "The entire disclosure of operating lease and finance lease for lessee." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "label": "Liabilities", "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others." } } }, "auth_ref": [ "r15", "r44", "r45", "r46", "r47", "r48", "r49", "r50", "r168", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r409", "r411", "r412", "r447", "r596", "r683", "r749", "r900", "r958", "r959" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and stockholders\u2019 equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r57", "r89", "r554", "r724", "r854", "r880", "r951" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Liabilities and Stockholders\u2019 Equity", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r46", "r138", "r168", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r409", "r411", "r412", "r447", "r724", "r900", "r958", "r959" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities:", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LocalPhoneNumber", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum", "label": "Maximum [Member]", "documentation": "Upper limit of the provided range." } } }, "auth_ref": [ "r114", "r116", "r118", "r119", "r121", "r133", "r134", "r304", "r305", "r306", "r307", "r345", "r379", "r429", "r501", "r566", "r568", "r576", "r588", "r589", "r642", "r644", "r646", "r647", "r653", "r671", "r672", "r693", "r699", "r705", "r716", "r717", "r721", "r722", "r734", "r902", "r960", "r961", "r962", "r963", "r964", "r965" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Measure:", "label": "Measure [Axis]" } } }, "auth_ref": [ "r798" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Measure Name" } } }, "auth_ref": [ "r798" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum", "label": "Minimum [Member]", "documentation": "Lower limit of the provided range." } } }, "auth_ref": [ "r114", "r116", "r118", "r119", "r121", "r133", "r134", "r304", "r305", "r306", "r307", "r345", "r379", "r429", "r501", "r566", "r568", "r576", "r588", "r589", "r642", "r644", "r646", "r647", "r653", "r671", "r672", "r693", "r699", "r705", "r716", "r717", "r721", "r734", "r902", "r960", "r961", "r962", "r963", "r964", "r965" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "MNPI Disclosure Timed for Compensation Value", "label": "MNPI Disclosure Timed for Compensation Value [Flag]" } } }, "auth_ref": [ "r817" ] }, "us-gaap_MoneyMarketFundsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MoneyMarketFundsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialInstrumentsOwnedAtFairValue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Money market funds", "label": "Money Market Funds, at Carrying Value", "documentation": "Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "us-gaap_MoneyMarketFundsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MoneyMarketFundsMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Money market funds", "label": "Money Market Funds [Member]", "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." } } }, "auth_ref": [ "r905" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Material Terms of Trading Arrangement", "label": "Material Terms of Trading Arrangement [Text Block]" } } }, "auth_ref": [ "r825" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Named Executive Officers, Footnote", "label": "Named Executive Officers, Footnote [Text Block]" } } }, "auth_ref": [ "r799" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in financing activities", "label": "Net Cash Provided by (Used in) Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r166" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flow from financing activities:", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r166" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flow from investing activities:", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r69", "r70", "r71" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flow from operating activities:", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 }, "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 }, "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "terseLabel": "Net income", "label": "Net Income (Loss) Attributable to Parent", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r62", "r71", "r91", "r136", "r154", "r157", "r161", "r168", "r173", "r175", "r176", "r177", "r178", "r179", "r182", "r183", "r192", "r259", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r404", "r407", "r423", "r447", "r558", "r620", "r637", "r638", "r747", "r900" ] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Numerator:", "label": "Net Income (Loss) Available to Common Stockholders, Basic [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDilutedAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLossAvailableToCommonStockholdersDilutedAbstract", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Denominator:", "label": "Net Income (Loss) Available to Common Stockholders, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Recently Adopted Accounting Pronouncements and Recently Issued Accounting Pronouncements Not Yet Adopted", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "qlys_NewPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "NewPlanMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "New Plan [Member]", "documentation": "New Plan" } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-GAAP Measure Description", "label": "Non-GAAP Measure Description [Text Block]" } } }, "auth_ref": [ "r798" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-NEOs", "label": "Non-NEOs [Member]" } } }, "auth_ref": [ "r762", "r772", "r782", "r806", "r814" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount", "label": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r789" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO Average Total Compensation Amount", "label": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r788" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO", "label": "Non-PEO NEO [Member]" } } }, "auth_ref": [ "r806" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted", "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r825" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated", "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r825" ] }, "us-gaap_NonUsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonUsMember", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign", "label": "Non-US [Member]", "documentation": "Countries excluding the United States of America (US)." } } }, "auth_ref": [ "r1005", "r1006", "r1007", "r1008" ] }, "us-gaap_NoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncurrentAssets", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total Long-lived Assets", "label": "Long-Lived Assets", "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets." } } }, "auth_ref": [ "r225" ] }, "us-gaap_NondesignatedMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NondesignatedMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsNarrativeDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofDerivativeFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Not Designated as Hedging Instrument", "label": "Not Designated as Hedging Instrument [Member]", "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP)." } } }, "auth_ref": [ "r11" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Total other income, net", "label": "Nonoperating Income (Expense)", "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)." } } }, "auth_ref": [ "r65" ] }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonoperatingIncomeExpenseAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Other income (expense), net:", "label": "Nonoperating Income (Expense) [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfOperatingSegments", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of operating segments", "label": "Number of Operating Segments", "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues." } } }, "auth_ref": [ "r689", "r861" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of reportable segments", "label": "Number of Reportable Segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r685", "r692", "r861" ] }, "us-gaap_OciBeforeReclassificationsBeforeTaxAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OciBeforeReclassificationsBeforeTaxAttributableToParent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Change in unrealized gains (losses) during the period", "label": "OCI, before Reclassifications, before Tax, Attributable to Parent", "documentation": "Amount before tax and reclassification adjustments of other comprehensive income (loss) attributable to parent." } } }, "auth_ref": [ "r17" ] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Total operating expenses", "label": "Operating Expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpensesAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Operating expenses:", "label": "Operating Expenses [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Income from operations", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r94", "r684", "r860", "r862", "r863", "r864", "r865" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseExpense", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lease expense", "label": "Operating Lease, Expense", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r954" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/LeasesMinimumAnnualLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Present value of net minimum lease payments", "label": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r461" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liabilities, current", "label": "Operating Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r461" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liabilities, noncurrent", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r461" ] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/LeasesSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Cash payments included in the measurement of lease liabilities", "label": "Operating Lease, Payments", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r462", "r463" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Operating leases - right of use asset", "label": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r460" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.qualys.com/role/LeasesWeightedAverageRemainingLeaseTermandWeightedAverageDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average discount rate", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r466", "r723" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.qualys.com/role/LeasesWeightedAverageRemainingLeaseTermandWeightedAverageDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average remaining lease term (years)", "label": "Operating Lease, Weighted Average Remaining Lease Term", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r465", "r723" ] }, "qlys_OriginalPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "OriginalPlanMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Original Plan [Member]", "documentation": "Original Plan" } } }, "auth_ref": [] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Other noncurrent assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r144" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Net change in unrealized gains on available-for-sale debt securities, net of tax", "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "documentation": "Amount, after tax and adjustment, of unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) and unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r149", "r150", "r152", "r559" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Net change in unrealized gains (losses) on cash flow hedges, net of tax", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax, Parent", "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent." } } }, "auth_ref": [ "r152" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails": { "parentTag": "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAmountsRecognizedInStatementofOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other foreign currency transactions gains (losses)", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "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." } } }, "auth_ref": [ "r2", "r559" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxAttributableToParentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxAttributableToParentAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive income (loss), net of tax", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent, Alternative [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 }, "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofComprehensiveIncome", "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "totalLabel": "Other comprehensive income, net of tax", "verboseLabel": "Other comprehensive income (loss), net of tax", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r5", "r9", "r84", "r155", "r158", "r179" ] }, "us-gaap_OtherComprehensiveIncomeLossTaxPortionAttributableToParent1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossTaxPortionAttributableToParent1", "crdr": "debit", "calculation": { "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Tax effect", "label": "Other Comprehensive Income (Loss), Tax, Portion Attributable to Parent", "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r5", "r9", "r84" ] }, "qlys_OtherGeographicAreasMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "OtherGeographicAreasMember", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Rest of world", "label": "Other Geographic Areas [Member]", "documentation": "Represents information related to other geographic areas." } } }, "auth_ref": [] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Other noncurrent liabilities", "label": "Other Liabilities, Noncurrent", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r48" ] }, "us-gaap_OtherLongTermInvestmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLongTermInvestmentsMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term marketable securities", "label": "Other Long-Term Investments [Member]", "documentation": "Long-term investments classified as other." } } }, "auth_ref": [ "r998" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Other income (expense), net", "label": "Other Nonoperating Income (Expense)", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r66" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Other Performance Measure, Amount", "label": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r798" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount", "label": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r760", "r770", "r780", "r812" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Amount", "label": "Outstanding Recovery Compensation Amount" } } }, "auth_ref": [ "r763", "r773", "r783", "r815" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Outstanding Recovery, Individual Name" } } }, "auth_ref": [ "r763", "r773", "r783", "r815" ] }, "us-gaap_PatentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PatentsMember", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Patent licenses", "label": "Patents [Member]", "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law." } } }, "auth_ref": [ "r83", "r885", "r887", "r888", "r889", "r890", "r891", "r894", "r895" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]" } } }, "auth_ref": [ "r787" ] }, "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payment of acquisition-related holdback", "label": "Payment for Contingent Consideration Liability, Financing Activities", "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date." } } }, "auth_ref": [ "r4" ] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r68" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Payments for taxes related to net share settlement of equity awards", "label": "Payment, Tax Withholding, Share-Based Payment Arrangement", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r165" ] }, "us-gaap_PaymentsToAcquireMarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireMarketableSecurities", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of marketable securities", "label": "Payments to Acquire Marketable Securities", "documentation": "Amount of cash outflow for purchase of marketable security." } } }, "auth_ref": [ "r868" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of property and equipment", "label": "Payments to Acquire Property, Plant, and Equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r67" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Peer Group Issuers, Footnote", "label": "Peer Group Issuers, Footnote [Text Block]" } } }, "auth_ref": [ "r797" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Peer Group Total Shareholder Return Amount", "label": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r797" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Actually Paid Compensation Amount", "label": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r789" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO", "label": "PEO [Member]" } } }, "auth_ref": [ "r806" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Name", "label": "PEO Name" } } }, "auth_ref": [ "r799" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Total Compensation Amount", "label": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r788" ] }, "qlys_PerformanceBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "PerformanceBasedRestrictedStockUnitsMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Performance-based Restricted Stock Units", "label": "Performance-based Restricted Stock Units [Member]", "documentation": "Information related to performance-based restricted stock units." } } }, "auth_ref": [] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PlanNameAxis", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Plan Name [Axis]", "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r906", "r907", "r908", "r909", "r910", "r911", "r912", "r913", "r914", "r915", "r916", "r917", "r918", "r919", "r920", "r921", "r922", "r923", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r931" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PlanNameDomain", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Plan Name [Domain]", "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r906", "r907", "r908", "r909", "r910", "r911", "r912", "r913", "r914", "r915", "r916", "r917", "r918", "r919", "r920", "r921", "r922", "r923", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r931" ] }, "ecd_PnsnAdjsPrrSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsPrrSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Adjustments Prior Service Cost", "label": "Pension Adjustments Prior Service Cost [Member]" } } }, "auth_ref": [ "r790" ] }, "ecd_PnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Adjustments Service Cost", "label": "Pension Adjustments Service Cost [Member]" } } }, "auth_ref": [ "r834" ] }, "ecd_PnsnBnftsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnBnftsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Benefits Adjustments, Footnote", "label": "Pension Benefits Adjustments, Footnote [Text Block]" } } }, "auth_ref": [ "r789" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, par value (in USD per share)", "label": "Preferred Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r51", "r320" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares authorized (in shares)", "label": "Preferred Stock, Shares Authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r51", "r598" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares issued (in shares)", "label": "Preferred Stock, Shares Issued", "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt." } } }, "auth_ref": [ "r51", "r320" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares outstanding (in shares)", "label": "Preferred Stock, Shares Outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r51", "r598", "r618", "r1003", "r1004" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock: $0.001 par value; 20,000 shares authorized, no shares issued and outstanding as of September\u00a030, 2024 and December\u00a031, 2023", "label": "Preferred Stock, Value, Issued", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r51", "r550", "r724" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expenses and other current assets", "label": "Prepaid Expense and Other Assets, Current", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r847" ] }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from issuance of common stock through employee stock purchase plan", "label": "Proceeds from Issuance of Common Stock", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r3" ] }, "us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleAndMaturityOfMarketableSecurities", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Sales and maturities of marketable securities", "label": "Proceeds from Sale and Maturity of Marketable Securities", "documentation": "The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities (held-to-maturity or available-for-sale) during the period." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from exercise of stock options", "label": "Proceeds from Stock Options Exercised", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r3", "r14" ] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "crdr": "debit", "calculation": { "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total property and equipment", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization", "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset." } } }, "auth_ref": [ "r836", "r846", "r896" ] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails", "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Lived Tangible Asset [Axis]", "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r8", "r468" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNet" ], "lang": { "en-us": { "role": { "terseLabel": "Property and Equipment, Net", "label": "Property, Plant and Equipment Disclosure [Text Block]", "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r74", "r105", "r110", "r111" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Computer equipment", "label": "Property, Plant and Equipment, Gross", "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." } } }, "auth_ref": [ "r75", "r140", "r556" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails", "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment [Line Items]", "label": "Property, Plant and Equipment [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r468" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 }, "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets", "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails", "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment, net", "totalLabel": "Property and equipment, net", "label": "Property, Plant and Equipment, Net", "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." } } }, "auth_ref": [ "r8", "r468", "r544", "r556", "r724" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Property, Plant and Equipment, Net", "label": "Property, Plant and Equipment [Table Text Block]", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r8" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails", "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Lived Tangible Asset [Domain]", "label": "Long-Lived Tangible Asset [Domain]", "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [ "r75", "r468" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Provision for credit losses", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r164", "r266" ] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pay vs Performance Disclosure", "label": "Pay vs Performance Disclosure [Table]" } } }, "auth_ref": [ "r787" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pay vs Performance Disclosure, Table", "label": "Pay vs Performance [Table Text Block]" } } }, "auth_ref": [ "r787" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Axis]", "label": "Statistical Measurement [Axis]", "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median." } } }, "auth_ref": [ "r114", "r116", "r118", "r119", "r121", "r133", "r134", "r304", "r305", "r306", "r307", "r338", "r345", "r372", "r373", "r374", "r379", "r429", "r476", "r485", "r501", "r566", "r568", "r576", "r588", "r589", "r642", "r644", "r646", "r647", "r653", "r671", "r672", "r693", "r699", "r705", "r716", "r717", "r721", "r722", "r734", "r741", "r898", "r902", "r939", "r961", "r962", "r963", "r964", "r965" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Domain]", "label": "Statistical Measurement [Domain]", "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median." } } }, "auth_ref": [ "r114", "r116", "r118", "r119", "r121", "r133", "r134", "r304", "r305", "r306", "r307", "r338", "r345", "r372", "r373", "r374", "r379", "r429", "r476", "r485", "r501", "r566", "r568", "r576", "r588", "r589", "r642", "r644", "r646", "r647", "r653", "r671", "r672", "r693", "r699", "r705", "r716", "r717", "r721", "r722", "r734", "r741", "r898", "r902", "r939", "r961", "r962", "r963", "r964", "r965" ] }, "us-gaap_ReclassificationFromAociCurrentPeriodBeforeTaxAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReclassificationFromAociCurrentPeriodBeforeTaxAttributableToParent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Amount reclassified into income during the period", "label": "Reclassification from AOCI, Current Period, before Tax, Attributable to Parent", "documentation": "Amount before tax of reclassification adjustments of other comprehensive income (loss) attributable to parent." } } }, "auth_ref": [ "r17" ] }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassification out of Accumulated Other Comprehensive Income [Axis]", "label": "Reclassification out of Accumulated Other Comprehensive Income [Axis]", "documentation": "Information by item reclassified out of accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r161" ] }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassification out of Accumulated Other Comprehensive Income [Domain]", "label": "Reclassification out of Accumulated Other Comprehensive Income [Domain]", "documentation": "Item reclassified out of accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r161" ] }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassification out of Accumulated Other Comprehensive Income", "label": "Reclassification out of Accumulated Other Comprehensive Income [Member]", "documentation": "Identifies item reclassified out of accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r161" ] }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Amounts Reclassified from AOCI to the Statements of Operations", "label": "Reclassification out of Accumulated Other Comprehensive Income [Table Text Block]", "documentation": "Tabular disclosure of information about items reclassified out of accumulated other comprehensive income (loss)." } } }, "auth_ref": [] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]" } } }, "auth_ref": [ "r755", "r765", "r775", "r807" ] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Research and development", "negatedTerseLabel": "Research and development", "label": "Research and Development Expense", "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity." } } }, "auth_ref": [ "r380", "r674", "r688", "r966" ] }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpenseMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Research and development", "label": "Research and Development Expense [Member]", "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included." } } }, "auth_ref": [] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date:", "label": "Restatement Determination Date [Axis]" } } }, "auth_ref": [ "r756", "r766", "r776", "r808" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date", "label": "Restatement Determination Date" } } }, "auth_ref": [ "r757", "r767", "r777", "r809" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement does not require Recovery", "label": "Restatement Does Not Require Recovery [Text Block]" } } }, "auth_ref": [ "r764", "r774", "r784", "r816" ] }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and Cash Equivalents [Domain]", "label": "Cash and Cash Equivalents [Domain]", "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." } } }, "auth_ref": [ "r139" ] }, "us-gaap_RestrictedCashAndCashEquivalentsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashAndCashEquivalentsNoncurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Noncurrent restricted cash", "label": "Restricted Cash and Cash Equivalents, Noncurrent", "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r19", "r102", "r167" ] }, "us-gaap_RestrictedCashCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashCurrent", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted cash", "label": "Restricted Cash, Current", "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. 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." } } }, "auth_ref": [ "r845", "r853" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted stock units", "label": "Restricted Stock Units (RSUs) [Member]", "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met." } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated deficit", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r54", "r79", "r553", "r573", "r575", "r579", "r599", "r724" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Deficit", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r135", "r170", "r171", "r172", "r174", "r179", "r181", "r183", "r260", "r261", "r298", "r394", "r395", "r401", "r402", "r403", "r405", "r406", "r407", "r414", "r416", "r417", "r419", "r421", "r458", "r459", "r570", "r572", "r581", "r1003" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails", "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenues", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r92", "r93", "r200", "r207", "r208", "r215", "r219", "r222", "r224", "r226", "r333", "r334", "r503" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomers" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from Contracts with Customers", "label": "Revenue from Contract with Customer [Text Block]", "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." } } }, "auth_ref": [ "r113", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r337" ] }, "us-gaap_RevenueRecognitionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRecognitionAbstract", "lang": { "en-us": { "role": { "label": "Revenue Recognition [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remaining performance obligation", "label": "Revenue, Remaining Performance Obligation, Amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r108" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails", "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remaining performance obligation, period", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r109" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r109" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersExpectedRevenuefromAllRemainingPerformanceObligationsDetails", "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Expected Revenue from Performance Obligations", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]", "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [ "r837" ] }, "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]", "label": "Revenues from External Customers and Long-Lived Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/LeasesSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Lease liabilities arising from obtaining right-of-use assets", "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r464", "r723" ] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Adopted", "label": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r825" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Terminated", "label": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r825" ] }, "us-gaap_SalesChannelDirectlyToConsumerMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SalesChannelDirectlyToConsumerMember", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Direct", "label": "Sales Channel, Directly to Consumer [Member]", "documentation": "Contract with customer in which good or service is transferred directly to consumer." } } }, "auth_ref": [ "r701" ] }, "us-gaap_SalesChannelThroughIntermediaryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SalesChannelThroughIntermediaryMember", "presentation": [ "http://www.qualys.com/role/RevenuefromContractswithCustomersRevenuebySalesChannelDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Partner", "label": "Sales Channel, Through Intermediary [Member]", "documentation": "Contract with customer in which good or service is transferred through intermediary." } } }, "auth_ref": [ "r701" ] }, "qlys_ScannerAppliancesAndOtherComputerEquipmentNotPlacedInServiceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ScannerAppliancesAndOtherComputerEquipmentNotPlacedInServiceMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Scanner Appliances and Other Computer Equipment Not Placed In Service", "label": "Scanner Appliances and Other Computer Equipment Not Placed In Service [Member]", "documentation": "Represents scanner appliances and other computer equipment not placed in service." } } }, "auth_ref": [] }, "qlys_ScannerAppliancesAndOtherComputerEquipmentSubjectToSubscriptionMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ScannerAppliancesAndOtherComputerEquipmentSubjectToSubscriptionMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Scanner Appliances and Other Computer Equipment", "label": "Scanner Appliances and Other Computer Equipment Subject To Subscription [Member]", "documentation": "Represents information related to scanner appliances and other computer equipment subject to subscription." } } }, "auth_ref": [] }, "qlys_ScannerAppliancesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ScannerAppliancesMember", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Scanner appliances", "label": "Scanner Appliances [Member]", "documentation": "Represents information related to scanner appliances." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Accumulated Other Comprehensive Income (Loss)", "label": "Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]", "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss)." } } }, "auth_ref": [ "r17", "r952", "r953" ] }, "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of the Carrying Value of Intangible Assets", "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]", "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company." } } }, "auth_ref": [ "r886", "r890" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareAntidilutiveNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "label": "Antidilutive Security, Excluded EPS Calculation [Table]", "documentation": "Disclosure of information about security that could potentially dilute basic earnings per share (EPS) in future that was not included in calculation of diluted EPS." } } }, "auth_ref": [ "r20" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Potentially Dilutive Shares Excluded from Diluted Net Income Per Share Calculation", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]", "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." } } }, "auth_ref": [ "r20" ] }, "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Gains (Losses) Recognized from Forward Contracts and Other Foreign Currency Transactions in Other Income (Expense)", "label": "Derivative Instruments, Gain (Loss) [Table Text Block]", "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments." } } }, "auth_ref": [ "r35", "r37", "r413" ] }, "us-gaap_ScheduleOfDerivativeInstrumentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfDerivativeInstrumentsTextBlock", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Derivative Instruments", "label": "Schedule of Derivative Instruments [Table Text Block]", "documentation": "Tabular disclosure of pertinent information about a derivative or group of derivatives on a disaggregated basis, such as for individual instruments, or small groups of similar instruments. May include a combination of the type of instrument, risks being hedged, notional amount, hedge designation, related hedged item, inception date, maturity date, or other relevant item." } } }, "auth_ref": [ "r11", "r30", "r31", "r32", "r34", "r36", "r37", "r40", "r41" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.qualys.com/role/NetIncomePerShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Earnings Per Share, Basic and Diluted", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r859" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock-Based Compensation Expense in Statements of Operations", "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]", "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement." } } }, "auth_ref": [ "r27" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetCarryingValueofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]", "label": "Intangible Asset, Finite-Lived [Table]", "documentation": "Disclosure of information about finite-lived intangible asset. Excludes indefinite-lived intangible asset." } } }, "auth_ref": [ "r282", "r289", "r293", "r294", "r296", "r504", "r674", "r696" ] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.qualys.com/role/PropertyandEquipmentNetNarrativeDetails", "http://www.qualys.com/role/PropertyandEquipmentNetPropertyandEquipmentNetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment [Table]", "label": "Property, Plant and Equipment [Table]", "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r8", "r468" ] }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas", "label": "Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]", "documentation": "Tabular disclosure of information concerning material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries." } } }, "auth_ref": [ "r24", "r59" ] }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "documentation": "Disclosure of information about revenue from external customer and long-lived asset by geographical area. Long-lived asset excludes financial instrument, customer relationship with financial institution, mortgage and other servicing right, deferred policy acquisition cost, and deferred tax asset." } } }, "auth_ref": [ "r24", "r59" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r346", "r348", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock Option Activity", "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]", "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value." } } }, "auth_ref": [ "r12", "r13", "r81" ] }, "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of RSU Activity", "label": "Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]", "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year." } } }, "auth_ref": [] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.qualys.com/role/IntangibleAssetsNetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r696", "r892" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "Security12bTitle", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Title of 12(b) Security", "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r750" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "SecurityExchangeName", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Security Exchange Name", "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r752" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Domain]", "label": "Geographical [Domain]", "documentation": "Geographical area." } } }, "auth_ref": [ "r115", "r117", "r120", "r122", "r123", "r124", "r125", "r126", "r127", "r128", "r129", "r130", "r131", "r132", "r224", "r225", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r584", "r585", "r586", "r643", "r645", "r648", "r654", "r659", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r670", "r675", "r700", "r726", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r735", "r741", "r904", "r971", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996", "r997", "r999", "r1000" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Segment and Geographic Area Information", "label": "Segment Reporting Disclosure [Text Block]", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r95", "r200", "r202", "r203", "r204", "r205", "r206", "r212", "r213", "r214", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r226", "r685", "r686", "r687", "r688", "r690", "r691", "r692" ] }, "us-gaap_SellingAndMarketingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingAndMarketingExpense", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Sales and marketing", "negatedTerseLabel": "Sales and marketing", "label": "Selling and Marketing Expense", "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services." } } }, "auth_ref": [] }, "us-gaap_SellingAndMarketingExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingAndMarketingExpenseMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sales and marketing", "label": "Selling and Marketing Expense [Member]", "documentation": "Primary financial statement caption encompassing selling and marketing expense." } } }, "auth_ref": [ "r64" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation, net of amounts capitalized", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vesting period (in years)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r706" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Forfeited (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period." } } }, "auth_ref": [ "r366" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Forfeited (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value", "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event." } } }, "auth_ref": [ "r366" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r364" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r364" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date." } } }, "auth_ref": [ "r361", "r362" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding RSUs", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in USD per share)", "periodEndLabel": "Ending balance (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r361", "r362" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted Average Grant Date Fair Value Per Share", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Vested (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period." } } }, "auth_ref": [ "r365" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement." } } }, "auth_ref": [ "r365" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r346", "r348", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based compensation, additional shares available (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized", "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares authorized for issuance (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r708" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares available for grant (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant", "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." } } }, "auth_ref": [ "r26" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted Average Remaining Contractual Life", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract]" } } }, "auth_ref": [] }, "qlys_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Intrinsic Value", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Aggregate Intrinsic Value [Abstract]", "documentation": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Aggregate Intrinsic Value [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Canceled (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period", "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired." } } }, "auth_ref": [ "r912" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Canceled (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price", "documentation": "Weighted average price of options that were either forfeited or expired." } } }, "auth_ref": [ "r912" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r357" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r26" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r353", "r354" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding Options", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in USD per share)", "periodEndLabel": "Ending balance (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r353", "r354" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted Average Exercise Price", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercisable as of September 30, 2024", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Aggregate Intrinsic Value", "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r370" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding options, exercisable (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number", "documentation": "Number of fully vested and expected to vest exercisable options that may be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r370" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average exercise price, exercisable (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Exercise Price", "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r370" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested and expected to vest as of September 30, 2024", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value", "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r369" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested and expected to vest (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number", "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r369" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested and expected to vest (in USD per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price", "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r369" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Domain]", "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercised (in USD per share)", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r358" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in USD per share)", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r357" ] }, "qlys_ShareRepurchaseProgramTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "ShareRepurchaseProgramTableTextBlock", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share Repurchase Program", "label": "Share Repurchase Program [Table Text Block]", "documentation": "Tabular disclosure of share repurchase program." } } }, "auth_ref": [] }, "qlys_SharebasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "SharebasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingNumber", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding and expected to vest (in shares)", "label": "Expected to vest, number of shares (in shares)", "documentation": "Represents vested and expected to vest outstanding number" } } }, "auth_ref": [] }, "qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding and expected to vest (in USD per share)", "label": "Expected to vest, weighted average grant date fair value (in dollars per share)", "documentation": "Represents weighted average exercise for share-based compensation arrangement by share-based payment award for equity instruments other than options, expected to vest." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expiration period", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period", "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r707" ] }, "qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Offering period (in months)", "label": "qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod", "documentation": "Represents the offering period under a share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term", "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r82" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercisable as of September 30, 2024", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Remaining Contractual Term", "documentation": "Weighted average remaining contractual term for fully vested and expected to vest exercisable or convertible options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r370" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested and expected to vest as of September 30, 2024", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term", "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r369" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase price of stock, percentage", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent", "documentation": "Purchase price of common stock expressed as a percentage of its fair value." } } }, "auth_ref": [] }, "qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardTargetPercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardTargetPercentage", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vesting range (percentage)", "label": "qlys_SharebasedCompensationArrangementBySharebasedPaymentAwardTargetPercentage", "documentation": "The target percentage for vesting of equity-based award under share based payment arrangement." } } }, "auth_ref": [] }, "qlys_SharebasedCompensationPercentageOfSharesThatWillVestUponTrigger": { "xbrltype": "percentItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "SharebasedCompensationPercentageOfSharesThatWillVestUponTrigger", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares that will vest upon trigger (in percentage)", "label": "qlys_SharebasedCompensationPercentageOfSharesThatWillVestUponTrigger", "documentation": "Represents percentage of shares that will vest upon trigger for share-based compensation." } } }, "auth_ref": [] }, "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensation" ], "lang": { "en-us": { "role": { "terseLabel": "Stockholders' Equity and Stock-based Compensation", "label": "Shareholders' Equity and Share-Based Payments [Text Block]", "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP)." } } }, "auth_ref": [ "r78", "r80" ] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesOutstanding", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "label": "Shares, Outstanding", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "negatedLabel": "Taxes related to net share settlement of equity awards (in shares)", "label": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation", "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_ShortTermInvestmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermInvestmentsMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term marketable securities", "label": "Short-Term Investments [Member]", "documentation": "Investments which are not otherwise included in another category or item that the entity has the intent to sell or dispose of within one year from the date of the balance sheet." } } }, "auth_ref": [ "r655", "r656", "r657", "r677" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossAmountsReclassifiedfromAOCIDetails", "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails", "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r10", "r52", "r55", "r56", "r135", "r159", "r160", "r161", "r170", "r171", "r172", "r174", "r179", "r181", "r183", "r201", "r260", "r261", "r298", "r322", "r394", "r395", "r401", "r402", "r403", "r405", "r406", "r407", "r414", "r415", "r416", "r417", "r418", "r419", "r421", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r469", "r559", "r570", "r571", "r572", "r581", "r639" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Axis]", "label": "Geographical [Axis]", "documentation": "Information by geographical components." } } }, "auth_ref": [ "r115", "r117", "r120", "r122", "r123", "r124", "r125", "r126", "r127", "r128", "r129", "r130", "r131", "r132", "r224", "r225", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r584", "r585", "r586", "r643", "r645", "r648", "r654", "r659", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r670", "r675", "r700", "r726", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r735", "r741", "r904", "r971", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996", "r997", "r999", "r1000" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Line Items]", "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r170", "r171", "r172", "r201", "r459", "r503", "r577", "r583", "r590", "r591", "r592", "r593", "r594", "r595", "r598", "r601", "r602", "r603", "r604", "r605", "r608", "r609", "r610", "r611", "r613", "r614", "r615", "r616", "r617", "r619", "r621", "r622", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635", "r639", "r742" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementTable", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity." } } }, "auth_ref": [ "r170", "r171", "r172", "r201", "r227", "r459", "r503", "r577", "r583", "r590", "r591", "r592", "r593", "r594", "r595", "r598", "r601", "r602", "r603", "r604", "r605", "r608", "r609", "r610", "r611", "r613", "r614", "r615", "r616", "r617", "r619", "r621", "r622", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635", "r639", "r742" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Price or TSR Estimation Method", "label": "Stock Price or TSR Estimation Method [Text Block]" } } }, "auth_ref": [ "r759", "r769", "r779", "r811" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Appreciation Rights (SARs)", "label": "Stock Appreciation Rights (SARs) [Member]", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock through employee stock purchase plan (in shares)", "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans", "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan." } } }, "auth_ref": [ "r10", "r51", "r52", "r79" ] }, "qlys_StockIssuedDuringPeriodSharesRestrictedStockAwardVested": { "xbrltype": "sharesItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardVested", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock upon vesting of restricted stock units (in shares)", "label": "Issuance of common stock upon vesting of restricted stock units (in shares)", "documentation": "Number of shares issued during period for restricted stock vested." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSharebasedCompensationandStockOptionsActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock upon exercise of stock options (in shares)", "negatedLabel": "Exercised (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r10", "r51", "r52", "r79", "r358" ] }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock through employee stock purchase plan", "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan", "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan." } } }, "auth_ref": [ "r10", "r51", "r52", "r79" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock upon exercise of stock options", "label": "Stock Issued During Period, Value, Stock Options Exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r10", "r52", "r55", "r56", "r79" ] }, "qlys_StockRepurchaseProgramAdditionalAuthorizedAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "StockRepurchaseProgramAdditionalAuthorizedAmount1", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationScheduleofRepurchaseAgreementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional authorized amount", "label": "Additional Authorized Dollar Value", "documentation": "Amount of additional stock repurchase plan authorized 1." } } }, "auth_ref": [] }, "srt_StockRepurchaseProgramAuthorizedAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StockRepurchaseProgramAuthorizedAmount1", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationScheduleofRepurchaseAgreementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock repurchase program, authorized amount", "label": "Share Repurchase Program, Authorized, Amount", "documentation": "Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [ "r903" ] }, "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Authorized repurchase amount remaining", "label": "Share Repurchase Program, Remaining Authorized, Amount", "documentation": "Amount remaining authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [] }, "qlys_StockRepurchaseProgramRollForward": { "xbrltype": "stringItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "StockRepurchaseProgramRollForward", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationScheduleofRepurchaseAgreementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Authorized Dollar Value", "label": "Stock Repurchase Program [Roll Forward]", "documentation": "Stock Repurchase Program" } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedAndRetiredDuringPeriodShares", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares repurchased and retired (in shares)", "label": "Stock Repurchased and Retired During Period, Shares", "documentation": "Number of shares that have been repurchased and retired during the period." } } }, "auth_ref": [ "r10", "r51", "r52", "r79" ] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedAndRetiredDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares repurchased and retired", "label": "Stock Repurchased and Retired During Period, Value", "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital)." } } }, "auth_ref": [ "r10", "r51", "r52", "r79" ] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock (in shares)", "label": "Stock Repurchased During Period, Shares", "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r10", "r51", "r52", "r79", "r578", "r639", "r658" ] }, "us-gaap_StockRepurchasedDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock", "label": "Stock Repurchased During Period, Value", "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r10", "r51", "r52", "r79", "r581", "r639", "r658", "r748" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.qualys.com/role/AccumulatedOtherComprehensiveIncomeLossComponentsandChangesDetails", "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets", "http://www.qualys.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "lang": { "en-us": { "role": { "totalLabel": "Total stockholders\u2019 equity", "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r52", "r55", "r56", "r73", "r600", "r618", "r640", "r641", "r724", "r749", "r854", "r880", "r951", "r1003" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Stockholders\u2019 equity:", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Tabular List, Table", "label": "Tabular List [Table Text Block]" } } }, "auth_ref": [ "r805" ] }, "qlys_The2012EquityIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "The2012EquityIncentivePlanMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "The 2012 Equity Incentive Plan", "label": "The 2012 Equity Incentive Plan [Member]", "documentation": "Represents plan 2012." } } }, "auth_ref": [] }, "qlys_The2021EmployeeStockPurchasePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.qualys.com/20240930", "localname": "The2021EmployeeStockPurchasePlanMember", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "The 2021 Employee Stock Purchase Plan", "label": "The 2021 Employee Stock Purchase Plan [Member]", "documentation": "Information related to the 2021 Employee Stock Purchase Plan." } } }, "auth_ref": [] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "TitleOfIndividualAxis", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Title of Individual [Axis]", "label": "Title and Position [Axis]", "documentation": "Information by title and position of individual or group within organization." } } }, "auth_ref": [ "r866", "r957" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationNarrativeDetails", "http://www.qualys.com/role/StockholdersEquityandStockbasedCompensationSummaryofRestrictedStockUnitActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Title of Individual [Domain]", "label": "Title and Position [Domain]", "documentation": "Title and position of individual or group within organization." } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Total Shareholder Return Amount", "label": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r797" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Total Shareholder Return Vs Peer Group", "label": "Total Shareholder Return Vs Peer Group [Text Block]" } } }, "auth_ref": [ "r804" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangement:", "label": "Trading Arrangement [Axis]" } } }, "auth_ref": [ "r824" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangements, by Individual", "label": "Trading Arrangements, by Individual [Table]" } } }, "auth_ref": [ "r826" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "TradingSymbol", "presentation": [ "http://www.qualys.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instruments [Domain]", "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r319", "r321", "r420", "r446", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r486", "r487", "r488", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r560", "r712", "r714", "r716", "r717", "r718", "r719", "r720", "r721", "r722", "r725", "r838", "r839", "r840", "r841", "r842", "r843", "r844", "r875", "r876", "r877", "r878", "r935", "r938", "r939", "r940", "r947", "r950" ] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Adoption Date", "label": "Trading Arrangement Adoption Date" } } }, "auth_ref": [ "r827" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Arrangement Duration", "label": "Trading Arrangement Duration" } } }, "auth_ref": [ "r828" ] }, "ecd_TrdArrExpirationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrExpirationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Expiration Date", "label": "Trading Arrangement Expiration Date" } } }, "auth_ref": [ "r828" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Trading Arrangement, Individual Name" } } }, "auth_ref": [ "r826" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Title", "label": "Trading Arrangement, Individual Title" } } }, "auth_ref": [ "r826" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Available", "label": "Trading Arrangement, Securities Aggregate Available Amount" } } }, "auth_ref": [ "r829" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date", "label": "Trading Arrangement Termination Date" } } }, "auth_ref": [ "r827" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "US", "presentation": [ "http://www.qualys.com/role/SegmentandGeographicAreaInformationRevenueandPropertyandEquipmentNetbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "United States", "label": "UNITED STATES" } } }, "auth_ref": [] }, "us-gaap_USGovernmentAgenciesDebtSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "USGovernmentAgenciesDebtSecuritiesMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails", "http://www.qualys.com/role/FairValueofFinancialInstrumentsSummaryofSecuritiesinUnrealizedLossPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "U.S. Treasury and government agencies", "label": "US Government Agencies Debt Securities [Member]", "documentation": "Debentures, notes, and other debt securities issued by US government agencies, for example, but not limited to, Government National Mortgage Association (GNMA or Ginnie Mae). Excludes US treasury securities and debt issued by government-sponsored Enterprises (GSEs), for example, but is not limited to, Federal Home Loan Mortgage Corporation (FHLMC or Freddie Mac), Federal National Mortgage Association (FNMA or Fannie Mae), and the Federal Home Loan Bank (FHLB)." } } }, "auth_ref": [ "r681", "r702", "r968" ] }, "us-gaap_USGovernmentAgenciesSecuritiesAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "USGovernmentAgenciesSecuritiesAtCarryingValue", "crdr": "debit", "calculation": { "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails": { "parentTag": "us-gaap_FinancialInstrumentsOwnedAtFairValue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsAssetsandLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "U.S. Treasury and government agencies", "label": "US Government Agencies Securities, at Carrying Value", "documentation": "Debt securities issued by a United States government agency such as Government National Mortgage Association (Ginnie Mae), Federal Home Loan Mortgage Corporation (Freddie Mac), and Federal National Mortgage Association (Fannie Mae), which are 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. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "USGovernmentCorporationsAndAgenciesSecuritiesMember", "presentation": [ "http://www.qualys.com/role/FairValueofFinancialInstrumentsCashandCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "U.S. Treasury and government agencies", "label": "US Government Corporations and Agencies Securities [Member]", "documentation": "This category includes information about debt issued by US Government Corporations and Agencies. Investments in such US Government Corporations may include debt securities issued by the Government National Mortgage Association (Ginnie Mae) and by the Federal National Mortgage Association (Fannie Mae) and the Federal Home Loan Mortgage Corporation (Freddie Mac)." } } }, "auth_ref": [ "r968" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Security Market Price Change", "label": "Underlying Security Market Price Change, Percent" } } }, "auth_ref": [ "r823" ] }, "us-gaap_UnrecognizedTaxBenefits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnrecognizedTaxBenefits", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized tax benefits", "label": "Unrecognized Tax Benefits", "documentation": "Amount of unrecognized tax benefits." } } }, "auth_ref": [ "r382", "r390", "r709" ] }, "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "crdr": "credit", "presentation": [ "http://www.qualys.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized tax benefits effecting the tax rate", "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate", "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate." } } }, "auth_ref": [ "r391", "r709" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UseOfEstimates", "presentation": [ "http://www.qualys.com/role/DescriptionofBusinessandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Use of Estimates", "label": "Use of Estimates, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r21", "r22", "r23", "r103", "r104", "r106", "r107" ] }, "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year", "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]" } } }, "auth_ref": [ "r793" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (in shares)", "totalLabel": "Diluted weighted average shares (in shares)", "label": "Weighted Average Number of Shares Outstanding, Diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r186", "r195" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average shares used in computing net income per share:", "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.qualys.com/role/CondensedConsolidatedStatementsofOperations", "http://www.qualys.com/role/NetIncomePerShareBasicandDilutedNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (in shares)", "verboseLabel": "Basic weighted average shares (in shares)", "label": "Weighted Average Number of Shares Outstanding, Basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r185", "r195" ] }, "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested", "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]" } } }, "auth_ref": [ "r791" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(f)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-4" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-8" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1B" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4C", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-5" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-1" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/235/tableOfContent" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/360/tableOfContent" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/440/tableOfContent" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481573/470-10-45-12A" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/505/tableOfContent" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "38", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-6" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-6" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-6" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-7" }, "r100": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2" }, "r101": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "210", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-20" }, "r102": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "SubTopic": "210", "Topic": "954", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477220/954-210-45-5" }, "r103": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1" }, "r104": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1" }, "r105": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-1" }, "r106": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11" }, "r107": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-12" }, "r108": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r109": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r110": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-6" }, "r111": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-7" }, "r112": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r113": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r114": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r115": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12", "Paragraph": "Column C", "Footnote": "5", "Publisher": "SEC" }, "r116": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12A", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r117": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12A", "Paragraph": "Column C", "Footnote": "4", "Publisher": "SEC" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12B", "Paragraph": "Column A", "Subparagraph": "(a)", "Footnote": "4", "Publisher": "SEC" }, "r119": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12B", "Paragraph": "Column A", "Subparagraph": "(b)", "Footnote": "4", "Publisher": "SEC" }, "r120": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12B", "Paragraph": "Column C", "Footnote": "2", "Publisher": "SEC" }, "r121": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "14", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r122": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "14", "Paragraph": "Column F", "Footnote": "7", "Publisher": "SEC" }, "r123": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r124": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column B", "Publisher": "SEC" }, "r125": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column C", "Publisher": "SEC" }, "r126": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column D", "Publisher": "SEC" }, "r127": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column E", "Publisher": "SEC" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column F", "Publisher": "SEC" }, "r129": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column G", "Publisher": "SEC" }, "r130": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column H", "Publisher": "SEC" }, "r131": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column I", "Publisher": "SEC" }, "r132": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "29", "Paragraph": "Column A", "Footnote": "4", "Publisher": "SEC" }, "r133": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 5", "Section": "Y", "Paragraph": "Question 2", "Publisher": "SEC" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 5", "Section": "Y", "Paragraph": "Question 4", "Publisher": "SEC" }, "r135": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/260/tableOfContent" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-26" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/280/tableOfContent" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-5" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479483/340-40-50-3" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479483/340-40-50-3" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-30/tableOfContent" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-4" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "730", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/740/tableOfContent" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-10B" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-4" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-6" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4E" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481839/830-10-45-17" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482014/830-20-35-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481956/830-20-45-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481926/830-20-50-1" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "12A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481444/860-30-45-1" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-11" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "280", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "940", "SubTopic": "820", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(1)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(1)(h))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(3)(d)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.W.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-21" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(5)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-2" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479196/954-310-45-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/985-20/tableOfContent" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" }, "r675": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r676": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "38", "Subparagraph": "(b)", "SubTopic": "20", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38" }, "r677": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column A))", "SubTopic": "320", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r678": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-22" }, "r680": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15" }, "r681": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(ii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52" }, "r683": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r684": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r685": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r686": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r687": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r688": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48" }, "r689": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "49", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49" }, "r690": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r691": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r692": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r693": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A" }, "r694": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8" }, "r695": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24" }, "r696": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40" }, "r697": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B" }, "r698": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C" }, "r699": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r700": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r701": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r702": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r703": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r704": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17" }, "r705": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8" }, "r706": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r707": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r708": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r709": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-217" }, "r710": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "231", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231" }, "r711": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D" }, "r712": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r713": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r714": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "101", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101" }, "r715": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "102", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102" }, "r716": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "103", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103" }, "r717": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r718": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r719": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r720": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r721": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r722": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r723": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53" }, "r724": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10" }, "r725": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4" }, "r726": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17" }, "r727": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21" }, "r728": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29" }, "r729": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3" }, "r730": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2" }, "r731": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4" }, "r732": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5" }, "r733": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6" }, "r734": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F" }, "r735": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r736": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-14" }, "r737": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-17" }, "r738": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-9" }, "r739": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r740": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r741": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1" }, "r742": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1" }, "r743": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r744": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r747": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10" }, "r748": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12" }, "r750": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r751": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r752": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r753": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r754": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r755": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r756": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r757": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r758": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r759": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r760": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r761": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r762": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r763": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r764": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r765": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r766": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r767": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r768": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r769": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r770": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r771": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r772": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r773": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r774": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r775": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r776": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r777": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r778": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r779": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r780": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r781": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r782": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r783": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r784": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r785": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r786": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r787": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r788": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r789": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r790": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "ii" }, "r791": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "i" }, "r792": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "ii" }, "r793": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iii" }, "r794": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iv" }, "r795": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "v" }, "r796": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "vi" }, "r797": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r798": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r799": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r800": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r801": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r802": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r803": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r804": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r805": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r806": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r807": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r808": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r809": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r810": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r811": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r812": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r813": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r814": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r815": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r816": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r817": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r818": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r819": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r820": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r821": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r822": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r823": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r824": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r825": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r826": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r827": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r828": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r829": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r830": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r831": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Number": "229", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1" }, "r832": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "A", "Number": "229" }, "r833": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Number": "229" }, "r834": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "i", "Number": "229" }, "r835": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r836": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r837": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r838": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "a", "Publisher": "SEC" }, "r839": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(1)", "Publisher": "SEC" }, "r840": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(2)", "Publisher": "SEC" }, "r841": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(3)", "Publisher": "SEC" }, "r842": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r843": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r844": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r845": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r846": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r847": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r848": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r849": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r850": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r851": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(7)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r852": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r853": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8" }, "r854": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r855": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r856": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r857": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r858": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r859": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18" }, "r862": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r863": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r864": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r865": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r866": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2" }, "r868": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-11" }, "r869": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r871": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r873": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r874": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r875": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9" }, "r876": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r878": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-4" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r881": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479130/326-30-45-1" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r886": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/405-30/tableOfContent" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/450/tableOfContent" }, "r900": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r902": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "505", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r922": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r923": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1B" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r942": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r944": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r945": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r948": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r953": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-4" }, "r955": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-2" }, "r958": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r960": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r961": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r962": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r963": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r964": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r965": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r966": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "912", "SubTopic": "730", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1" }, "r967": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "940", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479035/940-320-45-2" }, "r968": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r971": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r973": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r974": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r975": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D" }, "r976": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4G", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G" }, "r977": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r978": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r979": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r981": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r982": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r983": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r984": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r986": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r987": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r988": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r993": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r996": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r997": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r998": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-1" }, "r999": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r1000": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r1001": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r1002": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r1003": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r1004": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r1005": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r1006": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r1007": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r1008": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r1009": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" } } } ZIP 83 0001107843-24-000038-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001107843-24-000038-xbrl.zip M4$L#!!0 ( *B(95D^G;T27=$! .#F&0 1 <6QYKRGRG;;[ND][Y=9:2DQ MFA(2+0G;]*\_$2EQ,V 0$B@%N=?L:@RZ9$8\$1D1&1GQ^?^^]GWIF4:Q%P8_ M_TUM*G^3:."$KA<\_?RWL_OSJZN__=_.?WW^_TY._O?+W3?I(G2&?1HDTGE$ M24)=Z<5+>E+2H]+O8?3#>R;2K4^2;ACU3T[2V\[#P2CRGGJ)I"F:,;YL_&MT MZCRV'-JES@G5NX\GADN[)^31,DX>'4M_--V6T6XI\M.I1E5#513MY)$0\\2P M"'QJJ\Z)IA%-. M[_*]X,?<;6P\V8WZ1_SYD<23R[TX-&"2[]R173$9U<(+LG&I[7;[(_MU?"EU MW.54@1_FJ.*])B?PV]Q3Q]=Z 3R2(FH^)A$)8@0%20!F\ 35/%'L$UT=/\<) MAT$2C9:_-/MQ[L5X@??>W-\0%P:Z_.KW1JDI)P X59L^9-4;57WF0>/+A_') M$R&#R3U=$C^RZ[,?YB841\GBA?#E[$6KF8>(GB6-^P;5&5U:'],?V:6G/@$9 M;]#@Y+?[1N=SCQ*W\[E/$R+AG2?TCZ'W_'/C/ P2D/>3A]$ B.FD?_W<2.AK M\I&]]6/GO_[KOSXG7N+3#@K)R5@:/G],O_S\,7WT8^B..I]=[UF*DY%/?VZX M7CSPR>@T" ,* _!>3_%"&J4?/=>E ?L(OU^#THD\)WW_:W)'NS\WG!. 3T#Z M^"3JG5X&\+K1.8PN(OY5X-+7?]!10_( R=T3S6QT%! _5;%L0__\<>ZI.5YR M/HPB>,-7+W:(_R]*HLO O0 ].'E/J]$Y <0 M+=_R5C'3M_R%;Z))^^P&AVD M<5DON(7+0W?^%7:C\VL!,IW!TUWV!I\\-:14IGYN@!">=KU7ZIYTB1]/B=9N M=-@7^5YH*>-79O)T>D>?:3"D=Z!=O0 6,)@9>S7H@9M'WWMBG>P[=QESCX6TH*=6[$J-].W6'4A[?WQD.V;;W1R4D@2]WK>$> F^EP MC48G)R(MK<+AFOF'JU*^NC+:'K)+1GA5VV<<#B/V%S-N3X>!E["!QPC9N#'^OD])/(QH)_TK_?'SQ_G?QG_C,Q:>-X0Q MO'U8YBN<_G9_D?=9("],J";/!!//<^GLI8S.) FC+5^[<#]^>4&#$/3(LL=N M2IJY1WR<'_U[LZ;#:"4%+W^[RT7!I\?!RF?]\N4VU[.\8/6XKJ[SCWCP9P?S3!VRQ&?\%/FN4H#_!#/P3187_ MC>^;_C89ICMS:?L$/:[Y7\9_CU_R<6[>R\F@<4"&U'E/TIFIR@GZ.O._;#,S MG;>9S?&LR,P,OF:FCQW@XC,S.9C96Z&T]B^4+=[(H&].!KT\,E@2I:578]M0R"J?F3_NG"RUX'ON=XR7>*%ICD>O K MV^J9^LP)X!#ON?QCB %4<)S# /Z,SUX]<#K&E\'W_3"X3T+G1_JLSQ^7OF)" MCLE(*EL\U)V;=#NF^9GK>NC7$O^6>.Y5<$X&7D+\VM!_Y[;DKNGO.,/^T,=] MSIND1R.\+J(]?-HSO0J21!A?C&M#^)T;Y[4G M? &O5Y_A4A&32N71T:B"#COW- Y19?/ N)W[1G6V+WE@T,Z]MD,Q1GE@ULX= MT3I+TWP04R_)4-+J[B%7X:V52?_:>\L5>VME\J+NGO->O;4R"<_?)E%I4Q.. M:%[+P]C<\FB5M?W*HR-:!1V$(UI3 M'E',&"4>T1LP2CNC&AE*KI*U:73BB MU=)?.*+\\$(XHA41GC]'M+2I"46]^B E94KJ]?=Z:W( 2OM.$GM'>#J';#2>%%W9WC?#EAI MA*^[Y[LOQ5_B\0^C[DG*52C^,NE?=\^\:L5?)B_J[G_O5?&72?BZ^\][#D_E M.P-95H:F4?.SH*71H>[^:?5ANHH85W"ZXD3%<1L^KN)N_O M>'5I":5FW3WD:HY7ET?_VGO+E1^O+H\7=?><]WR\NCS"\Y OO:.I"44;P:UA"-:(V8)1W1C0ZFLA-*6<$2KI;]P M1/GAA7!$*R(\?XYH:5,3CFA>RZ."XKBMVJ<5\^" 5<&XNGO.>W7 JF!0W3WD MRARP*FJ$U]U;WJ,#5E:NK%5WI[ :[> 2N-%W5WAO?M@)5&>&X] MWZ_$B_Y)_"'],II\_#L\D41.;_2-/E-_G@.3BZZ"P3")V17J&C9L,YCO:6\D MG,W7B/XQI($S6C&2F4OC.^H,HPB@49>C'!:WJ=1E($,3R-@>&=Q&-HZ1&=P& M,(0"WVII+^U(AL5MA$0H\(J1P6UHY@B987,;>CDG<>\LS2^1X7K)?!) M@&$M&+@-L0X5I%\_M>&"4/-.I?!<\T3OH;$'[SUWL!"5"37P%UHR$^ M^UU=?QTF5X'C#UWJ_NXEO>7JHS:HJ$-TBU-4I,L O:"/R<;*GQ_&UR%XQ27C M9VV!\>)?4PS4(696(@;X(7P=0E*K",_V6+^%P9/0O-LQOPY1)VZ9SP;VA3@_ MJ%L_UK>YC7'5@?6'L_"VN8U][0X'_!"_UI&H(PDTE[BQT.8VV"0BC_L'0YVC M8'6EN8@Q'4KDL4Q4B !4C?S?,AE_9%&G@W& RL1 G0-@>X\\EDEX$7PZ7LVK M*B+^5*O08ZF\/\*8DUAZEP&!V_@7K\''4JG/;32J?MYHB4%A5>$W,,2C55(J MZ?F-#W&^+)3*!7[C,;533*4N&/R&2P[<8.8W1L'CBE JZ?F-4G"^(I3)!77G MT8)<-D@XE^(%WP+X_C+Z._4??*"ISOJIYO1/6^PN%/YU0]?L@O+&E;VN L: MP]S9J^=?._Z!NF=Q=NUT_+6QQ%1N'72!S3IBL]0U@=OPQ?O8_,,?Q:N &9PH4+7@> Z#-P)#NK#=&[C2(+INUN0N U;'8FF MY38\Q2_]2\4_MU$J?O1-J7CG-C3%#[W+Q+?&;#/K<=%;$M5I&="XC1G50$SF"L\;F[>@-LIK0:UJ MW 96^)@W$Y*V>V[1#I5%> MATI5X];?YU^FN. ?M_&"&@C@O%(LJT.>JG$;4^!?IG;$$EV$'HGA55V$'>K-/Q%V*&G/L+Q8K"["#KRQQ!!AA_+TW*;A5;W$\*HAP@[UYI\( M.Y2E%$N+Q1HB[, =2T38H3P]MVEX52\QO&J(&$6]^2<"&F4IQ=)BL8:(47#' MD@,*.Q1BR<;CNJ,.5EV#V3GL#,'-,+GISHR"%6##T4:TA_?BD38G[-/Y86_[ ME,/>?'DH% $R@<)MMZ/*0Z$(\PD8C6)T&"Y>H C0-\ MQI?1PVCPAJG(KV%"H\E%MP"6_"H D M3]ZC3UEA\OK( [?AX]JPHTSI:'$;1\W%CF^4Q+07^NX5K.OA,S-OZG,4J<5M M&)%S)I0J"=Q&T39B JL)?.^0(*#1V0 >20*G1@U;6MP&CWBE?JG8YS9FDDL! M?1U&@9<,(PH7?O5>\5.-)(#;@ '?/"A5#NKM+2_70G#U).8QY\+=#Q__0YWD M(80/L1-Y PR7U$=>ZNU8<\^K4N6JWCYX3EY=APD\SL%0Z3V-GCUG!['%70E5 MO;USOAE5ID19%?GM"=#:?2^$_TR#(;VC?>(%7O!T2Z-N&/61#3>/OO?$(O*7 MKP-09=1]\/IPR4WW'KZ-N\3!W^['&)XJBCB=7!X ML@6>&)XJBMX=')[: D\,3]Q&(L>=W%@W^F&UHAW%:5+ MV]SF(6W/NX=>% Z?>E,SO&,S=L6Q,_4#\&; M?J!.+PC]\&ETYSWU:I2':W.;@K450VX!F75*@[:YC7GD(C]+0L ?^W"1^WL8 M_>B&48UR0&QNPQ=7@4N[N5GQ]K+K<)I-==8/H\3[D]0J\\WF-D91HW6CS&0< MF]O [?K1IGD;W,;.^!^W2B5#=Q& 6J\;I3*(&X]?4SJO";]V2S.AQ[5%%5+ M:Q16(.ZXJI:AN&668O+<8< M;CWU5]?!:M?74<):=W8#)D[\0_OX/5T1_V#Y3YW 8*.&$^>3U@ MYG,;A.!/.5>T.=3F-BS!!8MV$YW3%&ZC$9P9\A6(!,QUU\S)2XA<>X]SL8!B MA. V%G#V0B+WS9'.F9S?+Z /W#L:)Y&'";],3_P6>&O#E1LMX ]>XM.;[E7@ M>L^>.R3^=#&_?*7.$(7CIMOUG --H=,4;J,0AP$+?LW(J@#';63EB &W%Z>U M*L!Q&U1Z [CI^9=%C-W=_U:770=-X39$5#7!N1 ';F,X57-G5^XAMW$3#A<\ M-H:W*Y[*4S9HB1X9M]$: 8Q)^'138*@E D/E-J D@#') ]@4&%J9P. VX:8N MP- .%!@BN,06&,:!+B4B\LDY,*I:2D3DDW-@5+24:"+RR3DP*MJUU+B-?*:] M9._'+7:_A6D3VK?- ^,$:U3ZNVB-PT%!*$WC-@#)&7^JJ?FD:=S& 3GC3U7Z MC=MP'&?\J:9RDZ9Q&Q7;B#]@F5 2.;TSH$%:? .OO7P=P-,.LP^ZIG$;KN*> M8U6M4=S&D;CG6%6K%KPC>[*EK!]'I'*:J4KBJ6+[W>08LJI:N*M4NO=PSC%QK0B/C KC.W[P5> MG$0$ [>'O8#5.ZY1+<^J6L7J'>NH7,XJ6VH7,XJ6<^XC7?L:+.SKFL8 MMU$.3OE4U;K%;6R#4SY5M%89W 8U..531>N3P6TT8\5)\;E28C>#.I7XUPQN M8Q'\",6N2,]M7&$9Z2_O;V_O>R3:Q4[[K@C,;1"@2D7"Q5+,K:N_;^ASP8V= M._&Y=(!JGRC:3$'U8CI@Y\YNWKFI2FGZ;><.8KZYM MEC(W<^>.2+ZYJ4S>RN&;R4/=T[FYJ3 ]O9RY[=Q6SC')F$W7^AX5-$!CW/&9\><<)AD$2CT]_N M#RU>:W*W%U(]*RH*R9K<;7%4SXJ*G N3NUV,ZEE146#5Y&ZC8@TKQD[Y=1C\ M=J";?"WN-B4XXDE%JT>+NPT(CGA2T3+2XFZ?@B.>5+2>M+C;P*AD:=_1[D6+ MN]V+JJE;9K'X5EW]YJOK.F"WKJ[PSJA;*G;KYMVR7;2;I$>CZ6]G$27UV4IN MU>^H'SN2+OW^+.^]\KGRMKWE7)&LU=+.((>%W5.LU=9.0(>%W56LU=G.8( M>%W5>LU=U&@OO$XSN&>-LMMAY/1(S)K/[RNMNY)%F[N8U;$PO*J5^S@C9APP MO*+EVS[.T!D'#*]H#;>YBZ%1QSU=6B#^?VBW&]'1;?/O)/AQH.+'7:0+N?$0 M$1?+JUD^35]$=PNR&WNPEY'S0WN M E-5<6-'20XV=]&@U00.P^_>/[S^@1H6W(5J.&!$)2J'NQ!*!8S8E;;A+EJQ MDK9?HJ%#;\.8C@Y3W[2YBR-PP8HJ-$Z[/A[^+EE17.=\]%Y/(QJ'P\BAU1O6X2X+5=3+<-U[#;1;=MV=$LCBN&VE'\C2Z;WQ,G( M!^+WO>"D1[VG7G*JVH/DTXOG)KU355'^3V/NNA-@S0F,*")."* M>$""\25.Z(?1Z5^ ;4JW^ZD+,SCIDK[GCT[_]@!\B"5PY:2[L$^"O\DQ"6)X M9.1E%\;>GQ3>"@-@?[ZD(S(4Y9/O!70R0DWY/Y^0+B_12SY5/D"I%]'NSXV_K.<56$X/Y-&G4MB5SA$+01)__DB @4CQ M,1\7N+F,2Y\&Q$6W^L2GW>34:FHPA_%7$1LU^PZHE[ W9H]Z#",8]@G0S"># MF)Z./WQRO7C@DQ$@F,VT)\[RDX941) M?\XPUK:;AFT@S!( <^*.7YPAL D(_+CX/=S55I;_I#15]OU']KQH_&/&&CV= MHBO!1)"&/S?TQINY9J.'*R4W'"(M$"MC8ITJD@K/&+_@(YOX,HE*29&$ T8' M-O&4!@YPD4:KI0;>M0THM3>@M): LM'Y[?KJX?)"NG\X>[B\GX?1S.!Y&>W] MY?EO=UK^_NKFNL(IO-4"RZ?P.XE[ M )LD#&3IHGG>E#3%--H<#7N9\FIT_KWP?RN'/(-T]G!>P//UYNZ[]!E6RB , MKH=]>(@C90OJ'>I?YT1M2 %!V\.EWNE%Z QQ1<=R:0VVEG;A@HZJG/S*UMOI M4SHK23&G8_5F:T''IM_5G\E[7R; %&DJJ3F29YU0FVW]_65BXQ7';-K61BO. MJN5EO(!H@U=<0F91@'A9H$$XV!P6O\.#\>'QUH!0V1J<6UI^'8(G 7;-Z(X. MPBAI2*RB:0*&Z&MRVO5>J7N21,.)0&F-SNM*:4K<*DA7EK9G!)R00TKI(=T. MHW@(%KZ4A-(]== 2E%1="B-)-3^X/Z%AE_2H--T4EBY?G1X)GJATYB3XL]K6 MC3D2<69W;+8,?H49XT2G!+IEKHYT"6:QNX6:3F^_3+W3>=BY\,U)'Q[1P]M. M7#(Z&5$2G=!@#$,=3 LZ2%+O4%=D"3VSC;7\/(F%*A2J,#4<(GB=AQ*^6A=V MB1]/E*'1Z(2'K RG!!':<+DV3*842B,_4C<*^__]%[6E?-KNWR3DR+58/OGS ML-_W8@S'25T/]&8P3.-MZ;"KL(.E_;Q\.3DV5S27+,3X%6AVS4@VUB,F!DG5 M$]ULM;2-%[$:^B"['[*]$X[=T2?6BRE(KN&7,==:8"W^=O;M7_>R='5]WN28 M<&DN])[P[*WI%-F0**'\,HKP+![F_1(-M(8&4RSM,*+^>A.^_[ M8.0?=_<2.HC"9WS.U.FQ&IT+ZI,7$M$"5NWW$(NS2/\!LSUVO=2P#[N?'Z./'6\6O.S2 MZ(D$WI_L[Y^.#7DIV:Z:=\W[II1E_4>,3O/8DE)P_;2=K[.G./QN#-PSUXUH M'&?_^0;/4\/FS.Z+1, MY2V/?\H!)6Q/Z]_VPN"-HZH:C8X-GFH++-?Z86CJQOWW7VQ-M3[%4D)].L!Y M9D&,60"!F476(*B&/@\OW)@)$::>)XW V1PLBR]J'QXGD<4S)SD]-'].MYJV MII7DS^EKG+"-=QO:3=O,]ZC=#XI1RMBKDYDRN*H O)>DN6.4.#W)\4D<5VAO M5TN*]%"9=#_J/X;^A[A*QZ-20EQG\3H&"3K>70$]^=+SX)NI,LWCLF:JD6G. M02+%H>^Y\UES]2#.YB9.MOZ,5.V12=G$Q#'3#8X0QQXZ/V3IKZC456E (NF9 M^$.*.SU2W-MI%.;X^)')=RK>$V9@C/W;O^X%H.NLHF)YXZ=B M+C-88-=G]Q=GOTJLT('TG40_:")]^W:^/F"V3=SC/\,X\;KO9*COU*S&1Y+3HS!?&.H/4+24!RM5'5))8U$TL?X'G 4BD>PI(0]T+< MNAGO4"<]DKP=^PN9'R7;UV4W9W/X299(X$H?M'2.CP ,^/WQ/S #O)Y="C?A M*++G8$9%S ;!!DGB1&HKDDM&<7/5WG?>6,?Y,(K@+6EN BJ/A"3#> )8N]'Y M%XW? G/NA?FVC8MGIC!8O5:Y5;Z*]M?A$GY40I[5"1 'HBA0@$!V^EZ2@+11 M'V0H"@-<2?R11&%5&4E7N, 0A\6V+DA")$P:>*M'IL^8=9OOAG"EH9BH*N[H MT]!/P]'W)P_2!V2K]4G3M69V0=+SV-;N +=V=ZU4TO%.= 6-?RI-$\S0"\F5 M*8:))F@+39!'$^1-IQ&"OYG@@ZP1R8>Y4(DX#@A^1%!Z418B7%^7?BL!8D^6 M_A#W06/ 6Z+Q^@=RT@Y*>HO EZ8U_;8)Q0=G07-KU I:] MQ@+K&!758)8K!LA^5C^-+UM[P,,$;-IJ27% 9N6N?_\90:S/6N9K1(= MT%B(SD$RG\)HM,2W8Q5 M%,=KS]UHZKJ#-QM*_89H*O#6ZMP',+43=^>S%;"D,2.!XQ$>3%?.J\6(LR^.2R(TE3+GSW%7))?H' M\M-2[Y+W($A](AYQC_K^)#;Q 9# @_IV9+W??S5$<)_P90JYA!?0;OJHYFY M%WW$Q<8:57^O\@"?LH+;I6E>(6*;I0S$8Y1/A>1O,DLVV(AOF MY%SC>*B=M>&[+.*&=L0,.V?+7HE*6'NIA#5;5VX0IBOT:41Q8^F9KJPTE[U; MF=Y"'N/0'R:+MZ32V6&G*)951LM;(<^:5,CK15/3](F>/$:4_#@AW81&I\1_ M(:,89[^\C)YA+BFCQV^EO,K'LO.B>+RFZ_\Z)/XHEJ6KP-EX2X*;P3^S*_VJ<*3KWQ_+YKH>3]O=>?$/Z2N8?>"SWZ?%3)>H M^QRQWZ4,;V_+\ F8^3HEDZJZ93S?X1L7> X6>RYV@Y=V>W;W(%VQ+ !5_21] MO;H^NSZ_.OLF@<-Q<_?][(%5_5S*_T/9M=TY[S:2U[R\:S4Z5PGM2VIS*_$4 M^K4*_0I,^SJ)?[(SR/T5]G11!;N?#0\!C)* T<9S+'!C@"%R^,2.-K"MXR_$ M![Q0Z;Y'Z99(V<_2*OB=C]]&L655B#._[,4-Q17B/%7Z+%8\H.EKA& ?#N=- M(=@'RUYS0\'&C;*(]K /SC/%8&/8IT+$#P8#+2'B!\M>>U,1)S&K?_4BUN[# MX;PE!/M0V:NK&PHVRZ?HA3Z\(OZ;=/G'D!6>$R)^(!BPA8@?+'L-/'J1P)B2 M4%HAZZ7%7X5T\\C^MMBLXF^SRFIGFU6:V*RJC30AT[Z3@#PQ'3DIPGGAQ"1\+/ LRG\ICA-%6MJ'O3LP%XS1V-A[X(>!XL2K2"7I-0NCO)$%#&*0*Z MT+JUD2?&M5_QX).7L)1MID$Q:W7\-RI@/XR'>#SA[#$<)N.Z;IBY);3JX:! M%VJ52[4Z-F8-H59K)%!IADT2 6.82KV-0H>ZJ$6%SCP<%N?3F2(+F82;498TDRIX[%"$ Q:BM"K/.I50^P(K@,;CW^@Z[=K\VKN$K+W]]=W?]#^GIV M_G!S)]W_]OW[V=V_-BJ _V8.68^N]"L/BP0DIYK6-"OK/',SC*3'K)T>-F&* MAX__H0[K?!7#@+TNK"=!(D5>_"/=.1\&#JPRQ O87CKKYMXG/_"HF.0%SS1. M\,0N]FL:PL,&U!GZTZ-D^)114_I"_?!%>L&^]%CC&T8KO>!SX)M'ZGL4KXYH MUEW>"QQO0'QVK]1-TZ!@Q*R'?$S' X/+6;,PN"4,_!'\ X.#Y\$-5&;O'H5# M;$4_]&%EAD3?Y(9.<:XD;$YY3!A$Y!GFJPYXY/8>,'D&'8X M.8:-7S_38)AQJ#M$BPB[L"%N$FQVA-QZ1!I'7CB,84@]$O6IVY3.W/3)&3!6 M0O,EA=(P("_XW[ K8S^X\4\PE0C0"L^=Q1T"";@![R2^#)]&$O'C$"[!0GJ2 MUT>BH$R,@<">1EPPOF(*CR+=+@K0+(%6=_N8:U"DMR9J8%F+FU6WV6I3-]>K MF1/-JDS+, EHY>TV5N:2-D@0"$(NL3S$==P<9_21**OB.Y4 E)- -T&!G?#DHT3WQ!N C?;X@:T+V@/-V2J M(AXZ#LAXNJ#@V6EH.;#Q&JHG4$.99D(C"9A'@QXK MMLTXBH8\ PC>Z()F\L,!ZV8Y_25=>A%1J4)?^:) (K Z]5$WL2Z9<7)"F8[" M9?F1Q!XHXA?*$([S 7T['A)V8J0PE%:FL04D]P%) MU#4IX["WZ3#%U0SS6.>]5-&Y9) N4@,PT-#^F"@H9G?1B-DD"$C&<6:H1/2/ MH1=-J]7A[6 B@1\*:U]J$RQ78'. >1DOZP(:>X3&O+(!LP=>2%_!"&0]<(>/ ML1-Y@U2S8#-=Y-C5@XSF+>9YC3(;N3_P/0:*B1["2\!8)E.#;/G#YE4:21)L M[\A4VEH$"<#LWRS*3&/D 261TYM=B)B'!VH%%IEXLFR V>X.$1B3Y3#[*F%K M7;:ZI:H##9TYS8-+V=1JFG,\QQX"KEM23)[QP" ^,-5(CX#CKI=,O+$ !ILY M$@(F>X#)F(5H03S&7I*N%AX&:I@J&(&3V8_'ML!,<,%C$:%488"C'0V9NI@R M=J)WT/]W4]0@2MY:V*".'CU_K*"F7ABX:23SPJ;.Z:R;&>,! 8&1/6"$45IR M1@XL/2#3" 0_Q);%S&4?1-3U'!8;ER>V0GK+6,5D9LU? F"&[K^$,,J&<13'.*"M(VG+P"U+:#.4@F7 M*( A[*?-PU/+@ZT* "98A%PP73#XF+;&9A&<98I!,&V/6F C8Y)9J2[UP5O! M0UQ,9%4C;8@.=_CAT)TL.;&<16Q&,8<9[]W+GA74<"W%I@C;G\] /T'08:P+D M6>"$X.4XN &P_*ILGR-*%8T[:THZ\T[I? 2X1]B.UWC9R6(P&(I;")TMW1D1 M:*D@)C(-FH$C"58EO')F[R\U26'AR2)B\?B \1SJ9';S4Q2^)+WQCR+P59WZ MCUC4F^UL1N[)@$2PO#L]$@34E_"O %=QX/T31;%'VYZ%KW!_#_4^Z8=#6 C& MV[_9LIXN&MY8_#5&.D[\V4RL1&2#5&MG4S\8 R M"+W=#,75B48".;OV,N9B4+B;,J,)9N*5"U!B#BG8M>&(TM2:]4.']7X(APDZ MK^,M^]\";]+])1XO'EE\),;<"< 4D8)A_Q&MT.YXESN.0S!(\$ZV$$6+ ECZ'/EHI+$]FNF_Y1CN-P[NHCR;*283HJ\;!S0K11 0P MXW-LS+!8%V,>7.Q@EH]#!VE.SE0O9#O99 #+S2!"_3+5".A?9R'3=$V2%[>N M9YV?<<@7GS[ \BIQ3%?N[&1QX8 ^D?'V,K.4!8+VL,2]6=:F00MD=68/@4R/ M,E,7<01,CH)T^P>+Q'O3I0MOF@GOSRY=L$CZ/@V>LG@(6UP$>W?,WM^"U*.E MN#9T$Y;]1J,(\]5 ?+L^>8G'H9#IVO$FJ#V;U0?V:41)/%EZB(-Z)$U8>>MY MLSCLP@:-8/D^]EK>\!*4ZS!.%P$8FH_2R9S7)(Q8DD?,K,79!-2W1F[6?&?& MJ@WG3&!\'(;&:)<],O*>B3.:R1EQ24( 4H'KH^*'9S!"\"Q]MN\YN/TW@RCPN+,-GAGXL"05 98]AU_2 MM-4I.B9<8]DDJ!FR P3,#'0]#+VC0F 92@,?8_>H;=C&[,SJE4)G4?YG4P1\ M2IC:\U&;3'=LX':VOF5;.6]R \0V315 ^3I5!> Q)./L^=09H0ENWL.7O0"& M^#2:))BPU0R3M?$ZBNB*\#W32-DDC)>=&]@@GB%8O6NO [S!*)55<"R8:F#! M,R^59C!$(KB'I8E--]V>O= GDYN&XZ7!BS;!P?*T,K0QWFS/KD&&M!(:1W=^ M4R_E_*8NSF_N?RQ[/[\YIP6LYNQ747KX(\O9]] YBZE^[]?7C[< =QG_2U#KFBJV>Q0SH#::H6+;NU)")8'4Y MP? 2&<3T=/SAD^O%X,*-3KV #8C=]"E[5F;]X.K]MMH,DBS]>;JP-Y5T<<]* MWV1OSGYNPD\?%[^WU&9+LY;^I#35I=^O>I2J-77;R/6HU=\;2JNL02FV_NZC MUI0+>B3.CZ(5>5T=H[?U+ZM2D8K"R4LV>A4,%IG;N018H MVZS0%9F=N]84S9A(P^IR/()^C'X7U,G(IT[(I\^1+S<.'8?2]^GP;KVC4JG0 MWH@(Z-C.&!MY0)---M.CS+0 Y0R^H.=*..[MX?2&C-O>GV-D134.5YQ>]'Z1 MT^?9R3C".'[*@YXH[?Z2!%5B_[6:9HMS5I*XEQ58@ ]XRNB9^'-.0\;4//-7 MI!J ^*^%9C@[,^;%\S2US]XKEC_]BN>+,:Z/=1#N,.@QC-T&V[."P;,OG!. MMDL=KT_\^.<&_A60/L4K3YX(&9PB/LX"%_]S.07'67).H@AWI/Y)_"%M2.GF M*3B5K\EI,.R?N"&+ON!C&^F1>R9$Z'=V3[ (KJ:;LJ$KGS_.#[63>K%%6#,6 MOHU95,YJ(N3C,.7#J$ ^5) /19=;+9,3^2C)IJG+HGB7[:#3=%E<:=]H^2BP M5.QK+1QK%H\I'5$^,JMQ7ABZWBMU3_ZD4;A$#K1T$T_5/A65@W?PN(MU8A/C M].C!LT:S;@">]9I4;W14V50*VQDEX>?(G(O[7A@E)YC+E.5,ID'3F;YI6RC6 M3>VI6LO&&L5Z01^3:?NYLV?B^4C:KV&$33\O7QU_B,0Y!-&TI M0P;(D*G(;57GQ!HI,_9S]$A;HX7WBC03[%Y-E>TV+TC;=RQO5;:5VF*ZOAHT M 6_Q""@6H7$H>#BL3$U V9E0@E5WQRGP?RU1PYV-'PQ(NPB'CTEWZ(\'5!5V0)=VK8 M\,>;$-E/*OM)E\>U5=GAHC5]%H[>)EV'R@4.7M-ME9T-6%0-N=VR.#%.A7.S MOV6U3""U 4A&2]:T%B= .C(OYS:B ^)-JK#%,R=_G+F-,N'N;*EV,PI?I@0^ M"US6'S'=;]Y.: RET=%-65<**U_AT_ 'IS7*=P=PPHA]2[;41Z]N MQRFX*PS?XN(B-;HF'I+;JEEV;N;,:D&EO"QHFV= MC5P$;3J@K=V6V^U%5YHWM!U4:N!R5'P+@R>Q#[#O?8"S/I8W^9.ZYV&/ M;'2>]?[M^#PR*PKXQ]!CC3/8[H%(JMDZ&)+2]-8G00+.Z^68K-# UAL>Y/M>X"3GJCTY8M]<". M,_*L8\><$G;JEEIU6Z@;3',:(JGW "&S1G-N"QF3+\@<@04ZW42<5$LO]%TLB;+UO:[)#.UKQ,[S"%N4/5+G.@)<)*HLO4!V!1MFRLVZ*:)JUO+P8VVU$PN8E^"7-UCUM390 (#Y^U9;O%2P9)F6?/=(MO MC9J>>EBN1M?-MT#..6]DR%VH;,.Y'XP>V.A41T[!;RF-3ENQ95TKJU9#]<>GW'UF!STE)HP$9X=F4(E[*@2WJRV9X,$OWAN5];E-4;'?TM*5A M:-'0-$X\XA)6#B$.ARD.&Q8I>BL."XC'] Z[K(/6/$6 ZK&4X)E>TGL6>Y5:Y8#(K/1,719:12WGG6CWXL)Z,MI:0%JE:W9%L36Y@' M"*AUW5=V "@\RZSKLL9-7=8C,VC?'&R>-6R+:>"C,$YRG6LN*BHVIO6#L'!B MH @KMZISS46!A%DDJFR;O%1C+;5\9JNIV7RKW/GRF44C"8M;2$=5U7"-!B[L M%UI8NMBV95,OJ]YW]9D7)=G"QPJY-;JZ..14A%Q;UA1139,#:"R)3$S3JH5I MO(O@Q-8)LI:&O6YE5>4EBB>,9$["$]M#2@=MK,HMBY?3^0>5$+9%4**@\CV* M0-YV<8GM901WX&Q9:_'2$T=$A2N/36P/)K/145NR;1>N7\%71)AKA?OVM*#( M;RCIR.",-[B]1+0:'5NV59'?<( @VN388"D@LAH=GGH$'&7/)!'LW5.P-Z]P M8-%@TY8MC?^0FXCR\J"7"V"M#5@S#-DHWAI#A'=+.&P4]OM>@I7XT\-GB (8 M.@TZF3>1Q Q6W9DDK(CD]N=G-MD\:CB_GTK)-=['C\[>\0)7G^J M6BS-H+(6R-F65(QL/Y7^^IYLW=+HODZ"A-15F,W2]\(0U()#WCXSY)*R<0XVOB M_/V49P;/1AJ?#9->&&%CKIS6@VV\0]_EPUO?G[?$X9F-CJ;(RI)27XL43XJ_4/?F31N&2:;7V0?6K.!Z^I?B[H[)RCVH+ M@N4>E;T/6FW'1C"]@W ],C?'KL>(D_:@GXY((C$V!KJG@X3V'VF4FO6Z(DN: MHAGLZ@OJS/ZDLI_TR5H-ZXZ(N&[3N7X&*&QMV!P<;:718::3]HF3$)F(L^ZU M2WT!Z*B\06??+@^7=C)ZB6%0R$A^WRQ-7Y#3)FUO:2&_;Z]O-Y2]F,=KTW8F M(R]H?+;SV\9KL]1*&QON:J-=S(MMO#"U97;>^FGE-XSSCFNEI;=^<'BX#'L0 M;T)P-,IV#.SM*%RZ.5TFA=N,PFUEL17IODQF&6O*#RB\XYGZHP(&]%'D\FPN M?)D)]);CJH('(G@YK"GRO/:97KL>&RI'V"CU(*_-_:FR,Q@U4IOX8*IY[HD7 M2 X9> G9KBG14?B$:[3AE*2W0-&KX#RE9\XU4E7 X&\9FFSHO'3D$H&%/1:H M*0E$X*J9;4MN%Z^\P5>(H3;ZU7&&_:&/7K44LG19)^P/(MJC00RFI^2'\9%U MU_A02-7&,'SXM*2>TYC,+/7Q?);(:?_9;T#I:YK<=!_(ZS)),1H=K;U8)6$A MAT,8IW4"T(*:+0M .?4PB^-8RF+NUM[Q=6P&[HP"=FG7<[PC.WV[$WU[1Q," M;W(O210 .>(9*E^D1,XM(=A!KJW)IEU$1H2ERR&H-M7!.P"5A:VS;%E9B"T;1UOA5O>G0A7IEA*$XRE!YYF$WG3#M?Y!88/-%@M&6S7=8Q2G&B MH>:86Q.H* %S;#?(EE7K:$XVU$N'^V\:[6RNT]>1)6-4.L6%)C:B7U=!RAR, M#MK\!-]9X!;72.JN^N858F=%CHR082'#^ST968X,[ZI9W]YEF-D<'Q/L[C+. M4)G)F^R3Z,D+V'O->?EQ*) _*AL8JK(.&9J"ED./2L3!O0X2C#!1)P@3-!\B M^#J0/!C94\3VG*,$$WB2'HVI=!X&+@UBZN(G1D$6MOOJ!21P/+BR\WM- M:3YG9X8BV3@,),<@C-DVVFE$?8*Y/I]>/#?IP2QPD+-W96Q5IK>01QC",%E] M"P>T5DT8D_$F?6GF7QPM"H1'];9%B-MRP5HS7,=N$]VV;4>W-*(8;DOYMX;Y MI>E-O6B:E/M$3QXC2GZJ!;?^)_K%X JT,XA&>X M@!?ZZE!80PC M4R]@(V(W?EJT4J.G>K-F,9NG/4R785%)%F$4-LC=G/S?AIX^+WQM&4S>- MI3\I377I]ZL>I6I-Q5Y^RZI'K?[>4%IB4/L?E/GNHXKN*RP-B+8+'?I)-<9^ M/)7U>H0920^PTE+I.US7BZ5+6(#=SX_1Q\XD8NX$ MHQOIM2ZWM4&, R=] MEW51V#)HQW?\>4,:;!N YC3$O.&L\\28S?=CS!F(OD9A?UG5_\M7QQ\B6<[B MF,+_W"T2/55L+&_JLEV\,V$N)O*].23$[RC$KU6]^.D@?H8JMTMKR"S$CQ,@ M"O%;)WYJ]>)G8/J@+>NEU0L7XL<)$(7XK1,_JWKQ,T'\E+9LVR7G//"025FP MU%05Z#D/8Y;=$*UP7NMZ3F__GAM2\J:;B5!NL6@U.IHMV[K&28V)(S[BN7^O MHQAT\ !12[;TQ4I% CKUA\X:B[D8=.Q&Q]9DP^"E(9F SAZMO6+0:0-T%%DW M>8%.J6?&6TW=XMQP^R4*XU@:1&&WV&GQ>IP9V[\YQ^A[R\B;5S8TI=%1-5-6 M2BN+Q'6(0:"MN 58!&TJH$TU9 QJ/BPFG =^_W'YD3=T9B2R.FQF@$N M>,)^.,"S>X=2?JN*_*64HF>!>S&EYV6J+7*K?X-%Q=M+VCB(\K+UA]+:7)PR MH83MVRS9L@MOL @H<0BEM7DE94*IU>C8NFR:O#2<%U#::XY$F5"R&)26]2DZ M@-+7-3 [X$A:<6H/HE^4'1M1 ;$MK;?/?5]S X*W.]C8FXK%S;Z_7+++IPB M*S8F.<31&L.O1!RUF=5GVX7UJ\ 1ASA:8_65AR,=JZT9LK:DWYK 4?UQM,;D M*Q%':J-CM66KN.L@LB:VRYJ@ <6B7FCQ$;?O!5Z<1*SJE@CY;9TID=(4Q.-L MCJ+;R@@>3[1EHUVXU*YPKSD$T[I$B)+!A(?M3+G=+IP<*\#$(9C6Y3F4#":C MT3$566^)&/(A@FE=&D/)8,*#4*:LGTM#D/LQRPM #H50*>7T?]0@.Y M0+>I85H =+@KHV,"+?\G<03J^#)-"Z .MV\T<,(5_HNU'<7YKZ1'(\E+3=0/ M6<3T)UD*:"(.@AW2_<>6%W*%)=1IG&38%LD@VSI55\$SD!%3XE.M/R9L;LUO M-#HMV6J)))!#!-$:)ZDT$)F-CBFK>EF%E@6(> +1&J>G-!"UP 9M@[LMCGL= M(HK6.#&EH-J5>> MN&BPF,MZJZP3.6(?L>[(6Q,-+ ]Y>J-CR(;&?^<9@3PN0HCE(<]@9UHU12@] M ;V-XH[E0<]L=-JR8?*/O&-(H,BR>Q\I,)&.HY$)>17'SG:S&3U./!JWM/." M(9#C9I)7_84Q(KWN =EP^9I$!,CI!20:726T'X,DXDNCD!4!V3;^;[8:'5.3 M=8W_+'MQLH,+LY] M;59\"#R8Z]UYZ]&!@ALD6+&>@@0)ES^X4&=(LV,2T%DT55 ME9JA'$:<0+.50ZT-P-AX\^ MG>='[DH>FX1PQ- X&-JQ';S]0F+/*7(0YD"7S -9&&]I=(\*\=U(B?9V?;PD M40"3C\=W,Y!,ED)ENA1B\D93.Z VD +YAX[\5CG(;S/D%]X$$,@7R-\7\M52 MD&\IC8[>+*T$OD"^0/[.D6^5@WP5D5^\&7Q)R#^V(I 7GC],J%O@1-0JY^\0 M!3OG[ ]/YO-Y.!FXEDF]QBR]';00>(\A%:43"6$2PE3<:7I'F'0A3$*8CER8 M\OEA[PB3@?:H45;Y7"%,W*!*"-..7+MWA,EL=+1FNP;"= P)O[^S/Z@K$1@5 M>:+IKFXL#6/XS@M@WOW!D/4%#DK;_5WM,_'-,(D3$B!MLG!BOB0CJP6V'7;8 M6(RSE\&NHID8A\CN-4G.NV6WE;%[T?X0[-X-N]?DWNZ6W39CM[WD)*)@]V[8 MO28C=+?L;J?L;B]N'J1L9VF5AA2=(<54UZP^S-;ZF!!@"?S7]9X[G^&?,6G[)'KR@O1$CC;/'X=B MK;#]LT)3L*-"CTK$P>@G"48L_!DF\'2@F02#\6!D3Q'QI0&)$BGL2DF/QE0Z M#P,7*UZX^(D=+B(86OWJ!21P/+C\/H$OL(E:W)S0Z"U%LF$8)HQS$,8>4O0T MHCY)O&?ZZ<5SDQY, LU*-F?^!^K%\ R$0[A&6Z\>KAO$ ^#94OG5,\S4P<& M[9-!3$_''SZY7CSPR>C4"]BKV4V?LH=EBP,JMS?F#B-.^O-4[S655/=E 9+L MS=G/3?CIX^+WAM'436/I3TI37?K]JD>I6E.QE]^RZE&KOS>4EAC4_@=EOONH MHN&WI5Y$N]#&?*H:*O(&%A0&LXL>8'&ETG>XKA=+E[#FNI\?HX^=>SH &Q), M>4E7Y)WY9 ='S6OX)@\Q=X+1?)OH[YZ,MJ"B:?EI(=LH(.@L+8AZ#R MF,PAT%$@=;](/:YJ*;MI+77X";;'44%IEZ4T[=)*:=:AWYZ0*R%7^RFE:9=6 M2E/(%5\($W)592E-N[Q2FD*P^(*8$*PJ2VG:Y972K$O_VU0JVDU+XUPR;I(> MC=A!JXCV:!![SY..N!]\X/5/,CM[A5D&Y+7*@(^XO^3[RSP$I;6:;=Z1CB$1 MIT>")P0XZ,*(PJ#^I*[T1+P@ED _DF?B^;AU>0+Z[20&+08Z\1'4"W6&D9=X M--Y(&$2/GC51!:9SSF=5SG1M.1OSX&L8W0,'[B>T/W/_,XP3S%\"3MYT'\AK M[G7(;G0T63/+.OW+@1$G0+>IRUT>Z!9QA0<_],*M006J.$35&H>S*E765K!1 M8DL3C1(/$71KG+'*0,>ZM1] M*L%P74*ZF@C>AT*6:PSCAT]Y1/ <:/\52/]WI/POP!HFEY@"?D<=G\2QUP7: MX%#. A?$\)9$()2YA1';G,K*DECE3QO+X3ORL.?BO >.P3W9L=LB;Q%<>J-C MJ@HG)7 %ODK5<0LF[1YUW"+2#%!CZF*!!*'$Z@VR!1.V4I"9C8ZU9/-A[R [ MMICKZMV%LB*I!78I^9.P/<58Q_[?;1@QX4F2R'L7I3FB]+TR27,XFFB-K[!$"6VY M1:0I"LM--TR]W*;9A3A943A(R*^0W[VX6F7*KPKR:\EZJW#O'B&_0GZ%_&[D MJ98IO]C&3E=EM;1NW4* A0 ?O0"O<>7+%&!LG:=JX*B7U7JY*@$6I3=%Z;W^T.9]B;E.^LVI8.N\FFIS;:^_*?#J5VI%ZE=N6%1Q?K4[]I![<1- MS]$>3O6SC>K+%2XC=SCT.KYJ<>>3TR+=*.Q+X8"BQ0?.#SJ>S^STT';-5C?> M*R[:RVS;^W.,[-C:=FU10G#3W&;NYIH[/G:@<:X=EE?2%*.T\DK\I/P+43A4 M4=AA021-,4LKB,3AP80Z+&[3P]"QE(121('YC@<^\$RC>?@>_V)':0=1^.R! M[R$]CLHWCVK5)FPY/O=IL]6=7*4>6S?YE[4+.@#Y\E@,62*!*Y$^IK7^F7Y! M7P>X=7)DA])+-,IFR0N??9H=B#N;H7+N!0I+81JR(8X 'R2BUM@V.T&4A>=\ M9=7@!5&E'L6L@1:^10LF1F0 XR0GHJZ72&G%$%');EO=.R'JUS"Z"(>/27?H MGSD.T"F)EPF!W>B4=T*H9N> #API:W1J7J2T05WJ99W5V;&N'.\+PD#I:F#M M\JIC,ZDQZ(!EGF#^)WT2_:#9!NZDV)J_4/?F31N$24585] )M3=4^<6+Z"&-ZIXI_1:6338&U"""UT3'U ML@Y4";LY'Q3ND]#Y JQ\"DF86ISB*$UIG9)&,(2>(ILMFIBA!^ M4<0B3ZADP>!GOA(:O4L-7J:.C\SJ+5;U;UYH)M2>#?+=="\RNL=G@7L;T;XW M[,=7P3/-]LYR"Y4!0B5K^F((1-3[JS>\UNCD/<'+;'1TV3RX2G\UT-87M$NC M"&SD\>8Y>3VZP/).JK"."9MFFSP@6=-JE^^11\\OD*.T MG#Y\2TV!'*5-S+TC(%>9YHMN\"]&XZTXS 2DWC,ZET=FO.S"=H$%)J(DIA]5,*;SW83,N1<;&VQ\1;8-T?KH$*&UJ0VS$VAAB4Q;5O7%=@3U#_G500O? M1G1 /'><$YI:,"&K(9^:-"+ MW6 ;U%@,FJ/O8'+E.C@";#*M&>,X'E%2%,: MG;;<5A:#YB+ 5V]XK0GP[0E>6)Y0MI4BL0L. WQUT,T3"WE 1L(\+E<3CVE[ MFY)V&? UL'K;(G.T+G#92=QN ^#D5*-V-5>9#.Q>=FK%U@ MA3.,L,S_[ 7"^MU12 (Y\6U*Y[&-7""H^Z:K+&S0Y%F;:UJ?&OBZ\WK=I1Q* ^VK9FZVM$ M83FYVXST7T:_Q9AI,K%QSB;4SRU7V&&OW9)UJ^32Z'QV+Q!@+*5*TZ[ B =T M546V6B4WVN"AH5[]2UAZ+(E8E+ \[A*6M\/(Z1'<2 Z[RX^-B)#:]K4OR(@E MZ3^$9\X?0R^BWR<$GAYRS:M6=06S>TRY;7*0PR\"9OO<0=X-GE18IDU--O0B M>QP8[D\ M2)F-CB5KK<5Z0[S9RS4L._?.\E2KC95AS$YZ+PVS%3'D#RJ.O9,M\141[:LQ M([:/:.NM1L=LRZ;2+KX=7OW&2DF6__$" M?[.YTDW[&I>PN;+QUE?1<]C;WK_+S96:1_?NZ"#S&M%I=,)^/\0QA,Z/(POE M[<)5_!I&4_K>=,\9=5DIRMQ:U&YTVI:LVAPD^8NP714^8HE8P@/2L"1;VF(+ MMUJ?&*F#OAV'8=,UF+[2R/%2W5B*:9+X%"]%Y4Q9V7>)O)#(/;9-[EU8QGR@)%3 M3MUG S>[=5EI%PF "WN91X1M:"_O'&$Z:Z[7;G/@D1VW$>W%\9 $SD( 0TIZ M,.FGGD3[ S\<49I]/0EX#'P2"$.[#$/[*F-!(;_48-O@=FGG0H2AS1.:TC\D[&MC5DT%%3^N G*Z%F#<^QDX%V2-*"(:)Y'GH 6/OXLLT?+C M*BAO^/^74]+?3:B./YP%[OP7,U?>PO!#=[$TCN,/D:27KP[K-'('/MAEMTN= MW(GE)CO:"U*[F#NPG9E6_6(BDDQWZD%PCF<5\&S*BL(_GH\E1W6SI4V6K*A+AYPJ/5.PP&M$Q1+L^=S_#/>+A]$H$3 MF;Y7 P!D;SM!63S5FZV9K]A[LN]F7N\ -VBT?S1J"J#QH4+GYBE&8Y&5E4'RZ_3^ + MED;9G'#Y+>&R81@F4BA,TSM.67J']TP_O7ANTH-)X!AG[\JXKTQO(8\P@F&R M^A8.2*V:,"9KGA2S_^)H46X\JKZ,EC1,F/$]*%"9X2_X6,8@3O+%(!IK-$?TNOE53I=G<&P%0. M0(N$J9HY!;&G$5X%8R+/Q:(%*MI!\*"&0\H Y\_DLXRWK^C M1?:/66NI>OAU2/Q1+$NP6*R69%X&>WYS?7%Y?7]Y(<&G^YMO5Q=G#_#'_0/\ MY_OE]<.]=/,5_KHY_\??;[Y=7-[=LX01ZY-T^>MO5P__&L^O"C4L<4_<#\. M@+D >OXG_L?J!;!2A4-XAANO'NX;H8/!9N4HQTL-LRA@T#X9Q/1T_.'3N "0 M%[!7LYL^90_+UB?4KV\,"D:<].>IZFTJJ?K-PBW9F[.?F_#3Q\7O=;O9LJRE M/RE-=>GWJQYE-\U6*]>35G^O&888DQ@3CV.R]'>?E 4\WQBFNI*JA*7Q@'?C M\>V%R_+ZZOO4J>UU*I49KVDFO70_5]DCM656EWI95W[F#L@6(K ^=[ M(N49S!#M2^)OO9!6/85;XKDG5T%MQW].!E[REOX"R'F![#C#_I"=QZ@M$ECK MQ=J.'@^@1K1'@]A[IK6=!3B789]*'[Z%\5MK7UZCI<()!2BXD.X ML,+5:/3,T,1#?C2*LS!-;>=RR8I_+('S-@^$TTR/@M!>=J9G':YGS*'4G%B& M70NP6[A>11W.U0C1$:(S$9TUY^&6B4[.-<'&G@B6W-8*U_ 4PL45SHY2N/*5 M'M V/.E=@ICAB6[94A;S!3EJ]"#D2\A7J?*UD/2_,_EJ*8V.IMFR8I=0A$E( M&!]@.TH)*_'4:@EBA2? 6[:L6B4GNO-[!#P5#+NIV7P+1U:8).S3K6(W>8O# M<"TSD^)HVQ/B.,HEY2+G=B=TJU\\!4<%1P5'!4=KQM%0]#MG)SX?PED0T2)8MV]B1IEU61H8 DQ#U(^9.F<;X#D3= MY$G4CRS.?[6J@]MP !_S-TDN5A2W/I*S(L=V34%FMF6&)*?NQ3 "(J1%EM/4 MVQ5-;A?EI=7H&*UR./,PV-L@L 06+S(Y_S\H<_BM_? M^9@VVF"7G;V0R/TG?+=T^\/"KE]&235&CC:.(Z)L@CN".X([@CN".T?#G2.+ MOS^05W@6ZPL%!FP2LJQZ9KM),4T2G[690C.7LM/;$D&[:SOK5L3FL_IY6-[] M:Q@!Z7_WDAZ>C@=ZP!?LUR_H.&+N' UBUB=IF7F+B:^+V3TB6"]B? ?#G5*# M]6?N?X9QTD\[.#)5]Q!N+'XY0S8FN)ZJ;"MV]2$; 3*A @1W!'!N/?R2,ZC*R$T-AC/);="U$N2 2=#HP[.]H4> C/W''7 M:-R=NPJR%L;,37Y\&W*ZP\W0V$OH/8V>/8>F:\<==<*G@#UEJV1/6VETU+:L MF(L^MD CEV@4ND)P1W"G>F.>.TVND)[V3*R#M>;= &U]3*Z@.95 M+U4$$X7H"-$9BXZV10/=G&L"YK2JBMS&MMU"N(1PU5NXYMOT2C8 W2Q):L.$W?#X:-/ZQ=GXV##?4-*UF./ MH- .SN:8XGUS1_!4\%3P5/"47_-OE[U ;1LL/UVVK,*&GP#>^]0-L*+-I665O' M DQ"U(^8.V6:XCL0=94G43^F8/\^&X'6\+Q=SC1;;1^-0-L:IE65DV9[M&<5 MQ$D2GKF3:[6JNA%H&].'94TIW&Y.H$O(ON".X [/W"G3C]B]9C;XTLS'%-HO MN0MH#2N-;^0\Y.T"VC8;'4U?]*RW*RQ^M.$3$=SBF3OY,L>+=P'-N0IA M=5I9;V_0BE<@26VPD&H1F!,: #!'<$=#O0S M-\U!=47C1C\?4RA==.JIO'!0_72,B-'PS)T=&>@\]'?0%;W142T9)LI)KJA MH] 5@CN".]5K\GIUZM$5@S--?F2=>OYG&%!)5T2CGNUR97;]OU6DA$8]NM(2C7J$Z!R;Z.B[;M2C*U:CT])TN:T7[FXHA(LKG!VE M<.7:J="+-.I9E"2[T3'U1<]#] D1 G2H K2W3CRZTL8FO*;<,D2O*R%A=9:P M7 *VZTX\NHJ5-C5+MI:<4>;-_CNF/731B8>O#?6#*LXO.GP(G@J>"IX*GG)N M_NVP$X^N8N'EE@P X[\QB@#E CO9"1!>>Q,IB>]&"63SV)]@=^ M.*(T^WJ2+C3PR=$TZ]GG\8++C-[LHMN,VK= [&5Y0QI6/!;1]!I'-01W.#EC ML%+NTJ5%JR\\:;EN( MLD$BW'1@W-G1;@ 7C>(T/!"@R'II'84$&H6N$-P1W.&2.[O9-^!"D>L*9XJ\ MI"T&GFW]V8Z?]W20T/XCC:1";3_G*[JFDULHZGJ434'U-P>KNSFLH9W;@RW&AW#:,MF\;ZM%4LM MBYA^9.7IX;^N]]SY#/^,A]LGT9,7I._5@$W9VTY07D[U9FOF*_:>[+N9USL4 M&!.5#1E568<93<'#GCTJ$0'R&L+!_!F))S!(^0ET M\,D@IJ?C#Y]<+Q[X9'3J!6PV[*9/V<,R;)B#!78R>J<_?WKQW*0'!%*:0%N4 MFRP0\46[FQN2=23O>$5ZY,O$\!-[-/KH+: MCC_;AA= +@9DQQGVA^QH9&V1P+I$U7;T<^VM:CN+M"^7] $[<_TD9/+H9?*" M=CW'2P02"E'Q(5Q8X6HT^MGP#TN=M#[5=BYI^&H)G)<['JJQK>,Q$]'=)A$L M)5XU\<05*&"I6YLD6:V=[^$3# .P9WV >;(!P38DRXXO.[)4T OJ9)F@*LL$ MU4K(!#VN7$]#VW6N)QY?MV2]M5B+I:)*CN:S;"UN-XHL\0N/U^SUGO0 M0G2.071VOY'<;G1,59,-NR6$2PA7W84K7X+50H.BG258&4JCH\IM8W$%VS:] M2LB7D"_>Y6OA-.GNY$MM=#1-E0TA84+":BUA>01LBX-P.<5* [&RV[*J+;;4 MX\TZ++7>DM4T6WP+QS5-)(]M+A:I.G08@38.RB\54+N\DG.["@K5+YZ"HX*C M@J."HS7C:"[/:DT9(A35I7"1TL$W X$;FOJ^Q6#FU$; MN)7:0()_%X/EC[)ZKI,\S,SED%G7.CRQ1%Z/I5-$$2?C:(M(BQ+?@CN".WM8 MH=>$ IDJG\NHGR[8L'K?=!_(ZVT8X7O.DB3R'H?LY.=#>$LB&B3+EFT3$S+* MVC068!*B?L3<*=,8WX&HMW@2]2.+\Z_LXC8!?'$M1?G<]:P'^8DG6)$[%$"L! ZFQ4>5,$442(JZ[@^63LPL 06)O))]O M\X<_BM_?&+F;D)E==O9"(O>?\-W2W1'3:'1495'_BNT1$803W!'<$=P1W!'< M$=P1X?D'\@K/BBBK>"LE(4NZ9[:;%-,D\5D/$#1S*3O<+1&TN[:S;D7H/BNO MA]7?OX81D/YW+^GAX7F@!WS!?OWRMJOY,O/6;'2,#3K@"==?Q/CJRIU28_EG M[G^&<<+:&=VEJNXAW%C\4,#GP0BGE[^68/+C-[LHMN,VK= [*4) M1)C@O%BA2T34:Q/9$-SAY,#!2KG+O9:QU-:VS4MJJT"8D'_!'<&=RK5SD4,' MI6GGEL*7=CZRG0W&OY-']!=9?:&QPW@L>Q>BEI"(.1T8=W:T)? 0GKGCEM*X M-W<59/V-F9O\^#;B=(=;H;&7T'L:/7L.3=>..^J$3P%[RE:IGBVUT5%;LJ(O M[NL)-'*)1J$K!'<$=ZHWYKG3Y!IGFKRD?0:>C?W9+J'?"?ALXQ:ANNADMN+Y&/LG<3RF'P@36RR3?W>D)[F4.P#M>;M AM&66T",VK M7JH()@K1$:(S$9TMNNOF7!/,1L?45-E2"Y> %,+%%VMAV&IA MBU#36BP1=<">?O"]8Y/N3=XT3>3^RT/\^VX;6\ !>WKS;?;0-M70L MC%U2W]"C/;T@SI;PS)T\JU:KZKZAEM'H&+*M+>:+"'1QB2XA^X([@CO51_AW MKYE-OC3SD47Z2^X;6L/X?M[BXQLY$'G[AEJM1D M[+ E8G^\84QH ,$=P1T.XN;[U,\Z-_KYR +JHH]/Y36%ZJ=F1*2&9^[LR$;G MHON#;:3='[C)&Q5H%+I"<$=PIW)-GL.:YT.3FYQI\B/KX_,_PX!*NB+:^&R5 M,=/:=1L?N\7:^%A+#@>(-CZBV/3._($RVOC8EFCC(T3GZ$1GYVU\;+O1,75# M5M3"-I,0+JYP=I3"E6\S>7]M?.PVMO%9UBM+-!D1\G6H\K6_-CYM!=OXF+*N M+K8H%1(F)*P^$I9+P';>QJ>M@EQ9%IB'BUF(O)F'1[;++MKX\+7E?E"5_45[ M$,%3P5/!4\%3SBW 7;;Q:6.&>TLVU<7R%@)PQPJX7>)-KP_>CNSTX+(N/JGS M(?KXB%-XXI2'X([@#B\K])JDO?*[>;2-1L2 M;O(DZ4<6\!?->TK-MEWH=K>#YCWM5J.CZ8OR(HX&B@,EA\*=7 O6=AVSRFL1 MT;9 (%59TQ<3L02\N(27$'[!'<&=RGV)W6MFFS/-?&01?M&])V\-P(T\B+S= M>]IM3+C;((E51%%*TWP%^+CDF'+7>Z7NR9\T"A?9"X.=V3WB(H@BH%1JRGN! MCE[;''DW%*P0*FL6!U6N!))$X+W&W,DGYWMN-60H&LBY*9M&">=;!)2X@M*^ MD:2SIE6V)CH-\;6#(SH-E;N34VZG(4,Q&ITEW;G$5HZ(%PKN".X([@CN".X( M[HB=!-%I:*^[#*5T&C(4$[S"#8*(PO$7$;ZZP(;C#R=F(E7*7>RUK8SJ1 MLJ1IGD 8EP@3\B^X([C#]?&(TI2SJO"EG(]L7Z/4MJ8UW+D058]$Q.G N+.C M#0$>FN$9JMKHJ+9L%C]0)] H=(7@CN .S]S9S=8!'XIO"!]KP9LRMYV@O)RJC=;,U^Q]V3?S;S>H<"8 MJ&S(J,HZS&@*GO?L48DXF!%!@A$6, G"!".G$7P=2!Z,["DBOC0@4=HGJD=C M*IV'@4L#3*6 3XS2[+3H5R\@@>/!Y?<)?,&"\,T)E]\2+AN&82*%PIB%V$_9 MP5/OF7YZ\=RD!Y/ ,<[>E7%?F=Y"'F$$PV3U+1R06C5A3/8\*6;_Q=&BW'A4 M;UN$N"U74RW#=>PVT6W;=G1+(XKAMI1_ZT9C?%,O&L]@0)[HR6-$R8\3TH4) MGA+_A8QB!.\L4@&FLT1_2Z^55.EV=P; 5 Y BX01VX0Y!;&G$5X%8R+/Q8>H4:E!,)RCAHWP-(_I+.,]S.\F=,:5E-;T!KI=_N'LK54:_PZ M)/XHEJ6KP%DMX#6;T_7-P^6]]' CG=]<7UQ>WU]>X*?[FV]7%VW"G7P%?]@QL&S=\ %4?N=BI[#.H[8E- M@F]PNS<.6'L;RVW(C$7;C"GV9S1)Q.3F+5#JG M&V>RVM,O"4EZQWM,.+ G)X!T#SGWBIC==TO)$DR!L&U+0KB.3S[!9P@9W7GO;C8SB\:!_;4MGS M;5*FZ$4A7="+YSO3S/,LR8$G(MZ7OO=L@SU!RQT=+YK&R'6Z%$7&9T^$^6:_]E MQ=]XP"^P]P"%S7U\._A.OX)%V[[TX1NNP+<"X.E)&('@Z *1G"6N%Y83;GX6 MK(!2"\;>UA+6,8D?,_.]A43 ?;HCSY[SC"\[6<$NW%EA"+Y)$O MN)I]-*1_)3_ C8@?&],&"4H=(/SES(9-&J_H#:=V$,1O.$8'E0%A3,(70MS- MJVR]09; ]/L7,H9->[9]SZ5^4I<^P+>6X+5:4V\M!MC[X4HC*C;Q6OPE; ^L MC3!+%7_X1#SPU)9S=&&=%2YU";X[K!T68 4! 5=,^K0%#Y#(4@3>7)A#UMCQ MHSTLP?MG@\G61)X2!WPTY"!X-N/NGZ1W^/I+'Z>8??.C+T!*Z3-L':(;X38! M1KL#-QXP!=?""KUQ: $#6ABFH$1^MD'<,!\3$+=OT\#O0RH"H'P/]OG)\<;X MPG?PPFP*'GOE'9KW,FJEL%+=49TK]F=6?2K]74795(U$7QQW)&U/5*:/E,N^ M:[&HQ]K^13#$L8U).K8Q6\C*W0-*-428L?;*T8E6# M#_2G&]%G;8PA8!NX.0@C #1Q@:N1A>%[3%Y;J[P_7+I &EL)0$'\T?O:DWY] M>/@,:A*XC,D?>Y%::EJWH"XCCH/_Q9O9+F..1%&\1S:5^W?_WUK"^)&3B,6- M$([Y4Z+/_LI8-)&>[WY,YI;[1(7) B0E/O55Y^N[Q\[//>F1^)3=MY8$%P'; M@H@+J%QT\1M\0L[1&(N(Q^[$(1(@B": MS//?FJF>/<@8LVQ#*9@3$B)YJ5'"#!%FPZLRRSSL;EYL#M+3=KO4O &C "3B ME.E1?-T$BOF8B_< =!0^7P*))TT]2KTPN;\$5$Q3-GGP)K[G8[*KSS3;FE@] ML-#H KRE[<9J!5C->J*/9AJJ J[QR5:"ULTRDJAA%[LT1TY(B>DM8ST:<[05 MS*69X[T$Z]LFK+6D.<$Q'O+OD%P"YB$A]'XNB!]I 3)I'H#*Q]U?)Z7&^&"9 MJ1HU.G ;D_>R*2],J:7U3)*WR7\N^;$DM.=TL@ T_.!^*V+Y^%@D7BXL->0' MO A-5@^GSDJSB*E8%]PN1TJ)EO3[!WLY(G?7 ["4'< ;KM^B3 O7_"=RV5$% MY=J0,=D)0C?I3\C O"LN=HV9!_8>7PCX$"&:+(FP^W]K8B54@IOD\RZLQ8$O MU^L$L4;O1,9^A !4%$;,'4-CU[DM9'C\$9!/LW>@.A; M5[5^Q=;8%DPWK6US!,QYLI*Q":I,-(5W=%LLQ(.4D$8]MK"^ Q_%^I8DM&5> M6!!$BV7*;[2H01Z+%60/6(BU0+.$RA?F.-!+P?P>V\Y&VV_4RZ$?LEM/8U\] MW*]%][+ZUM+R1=^4%FVG?DE-*BJJ\IW&%+V8EO?1W()7P/_%9UQKPB5Z"6RT M!1/),=%\\&?=")^Y+A'IHE+S7J@]@*)E BK6#B6@4^S@/5M.M''9/&_Z8CO, M8001"\:3C5X\(V870PBYI"<=!M8O._'DVSZ0'NX_D!9GRPT_6]YS<$+EVZ%CE=('*'L+%SF0>JS' MRWZA)WT$Y^O_P(N/Q6,K[%'PZ3]ZS^Q=]P]?WW1^ENP,X38__6-)S;M7G8>O?\!/\1%W?2,V3O&GQ)VC003V!7FB M-E@48S$>(M/5Z:)B8*G#6L;$=: >6HT M((7&L0^+??ST]G=\L<1U1-,:S.7D$9LKX;>R_,*84'2E$(EO%?\+-CS\'W8 ;I^J?P2QHZ U(F\0?Z3(;ET934*)OCLUD/0E4Q19IVNE/2#2S,=>/>LS' M;Z5M&> _!"97S[U&D8_G0=6Z.D=S9T7[(P.LD>$\:! M"\ !GZH0P4 6_V5N#4V_'(2IC<9'I4$0=+LU!:)M<912F*!*%H+(J $S3# ME* !*ODHZ2@*\/!SXQIE1(X+2ST@=N!?UM,3R)?XS#D5M!XG)[X;?.$3\+!L MQR&#NRXM>WIA;F4\@;>!5Q[':&1'?N =@]L+OT3%[J@"5$)'"%@:X?:9 5[GHTV;>62&Q.[&#;I-/2MG!4=<*)[%"Z75,Z65C0>3,QO3GN(CXR60AK"P\4%L1 5S)L Z=-#0;*.><>Z8%?XI,_%UUN?/AI- MKJ<'@*@&@1+L-[&\#.+W12<\]>'26E&WG.4Y37RT4%)1<&:^3"S?IP'3)+P. MNM#W?M#P:YSR,EM3'V/:)!'D20@*R!3,46[")2PU9EV0$9]!MT?)K2V >*>3 M8S_4&\&!C6*8H;L1K+,3NNR(W4H,&'@67!OY&.6F1\//&L$,4 MSX]][SO\9.J]T)0Z+SY)=PAP0""Q4Q#/33AC+4]@C6S$96-DV%F;IG"X:2SI QCXS/W;.?5-J]3M^YVP^_A,AU81L =3&;>] MB&[.70.06 XX#GOON7N+C>S<^_;K/."4,*//BL;8RRRT::X:#29%8/F %[98 MJX+; [;*(;#C'5YOY":WMG,I\NQ5 M9BBC#K5=BJLD;+$VDM<:K#'P.-5V^VF/R4W3 ^P@/) W$IM#2#DD6*+O\&=* MO*N]S:?L'NO<1S GGN:PD8X-MLD4,^_(*MF<6>1.UXF& 3.0DJ=$+DLNA _V M"(*UV1)[+UM")8[=[0JX9)W*[CIG]@\RO8NCA32IYYM/7YNEO#]YS\2GM0$2 MP! -U;1!BP.SB,]2&L'7]?&3N$1&&GON%'T6?-P='L?1HY>M5-VT/7QHBY L M&!L_:C,S.RZ]0KJ*)'E_:ZV4E%N43P0Y)J8@B)>$(GG-, 'KR+K7SD#;;TWU M]&L45R;TR(GIDIT;Y6J0*> %-FSA3=$X96\##JF5B!Z:4F.Q>@JP^D,:)F9D M28,+HZ9CK"\!_S*DM1'XRBQ5&3;6]\:;ZJ?M=3#"G^+4[!(]8Z)WUZM%DB3Y MWN[Z7LE#2)+GO?3L)$LK^6[[/8^&ZFXY^T+NB_0+#M92;_H%1@?S8H9JIV#6 MVSI&^D"URN^QPOSD?DE2Y6GU3D[85"N2W\:[J<$4"/7X[.2(!-(W?*!%TM+T- MT-:QE@&Y3_[R&@O]'&MU;[N40O2BU_'-8NF($F&GNPW=1/;U1ECT^DQ@Q-W! MXR?'7_?@JU^RG^MF3]:4W*_Z/3GW\WVWDI5>W\R_9-^M]G^N]0HB5#SA^K,ZR7-(WMA%*S-U MZC@I!)&I?RF(?$DB;TZ1\P3$CA/#.MUP)S/.O;-8F5"HI_+)*VII>Q'<8QK\ M7$Z9\C1YY@2G'E__]]U@8[ KEHN\[94;L9[XSH4[L?+04?7$=RO4#5D[W%.5 M8N-W"HWWB(R'\#'."3EKLI2B=T9*5S843@;*UM#<6/ &3^]6B#?T"GF#G9S\ M17POCRT&J6&W@C$$8W#.&$?F&5:M- R^E$9%4\BYAOKCSOGG7D>]8;,]KV!" M;4CY&2E90DN8E6D),2261R =L3>* .D$J3KLC&2MJYJJ %,;P71$1U<+)K7/ M&9AN(6YS//_*)IE0SDDL#S$Y-^TCS]?CJMQ";T_@ MZF0]7@)7)TAB!9PE5>XJ6E7S/ 6XN +7$;U^67"IO('K-GSQK2QIX8J?K='7 MA=2I.NI/."5A3>*W9!P^A.M$Q2):71/>>:NQ=42KE\36"<)7!Q]+D;NJD9TF M*@#6 H =T>R7!]B -X#=@A?_D%_R)/SVL[4\I>@;2M!*W'5#N.NMAM,1Q5X< M3B>(6K,S,KNFRHL;)1!5IR:_"**&?"'J%ASS]T&7;3.B/5T+NF7EH;"X;C"WJ"X2YF!)=A.!T9 MSNSVU=+G5A=G.!$6RPN+%2AY5Y$QUZ6-"T21*?&JW_;H+&D\3VL M.MVNBBWE.[@F&%DP5*0>-(*=Q"6K%H25^9"5192WI=%]7RK0;2$7NBVB[B^J STK6N8O!2 MQBS 5*<.KAA,!F=@NH6XBVA)?UG%?:F6]'IUHV7X\>8$KD[6XQ?M&JX/.R.E M;W9U=2# U49P'='K%P77H,\;N([H^21/"!9*]F.Q*;^ZC<"#Z+]?C?ERR?[[ M@^JFZ@COD4=L'3%A+MX>?:" 0SGH:@-=X*N-^#IBQ5P>7RIG^+J%@(7HOE^U MCJ^X^_Z@NK$ZPGGD$4Y'U/HE>J4/<)*.VC7-JOI%"4AQ!:DCFOPBD!IP!JE; M<,Q%__UK^.J7[;\_J&[:CG"S>(3=N6Y\-5W2!R;(:9F7^68"6EQX\!5!:\@3 MM"INB61P;@J(#ORB0_&%[9[#W&_T*TP';D,?$\%.M\%.Y]IS)2+EAMP9J:K: M5<1("\%P-\=PYUJY91A.80RG-F"DA0A\5=MAO^URI#@!6B1+CMG"E^VS;U17 M0UIX%QO7Z%OP88OY\)@174.[;T/KC.3NT"R=1BM84; B7V]>J7E=!ROJ36+% MFXPT7ZKY?O_T?K8M$SH54Z=%$NG4@'5E+?B-ZN9?5;NK? ?@!$<+CJXV9EYM M_VX0)-68%8*I!5,+ICXW+E\Q4YNM8>J M47HZ[?U;,V@4;-O_;4Y\(KW@'ZXG@7?H!C/B!]*8A"^$N%+[:Z M')#I'>_M$!XWV2)VI@,T%4./5C"7R)^1_0P: [OO@#RPW6<2A M&M#3!ML3L MCF*3$TWVI[,*[O&V#^X4__-N?7-,F\3JQU0YQ;-E.[A1[SW_*_SF8>&!U/\+ MJR6#\)NW5GQT,[_!P]XXWN3[1JN!,B6@ZY8H*_R('-Z9["YPI0T J MX\NJG M ,3[UJ8$=%=8FVHV9&9-0-R$P Y"!#JJ@)GG.-X+JM?MG6O^Y!I-[0W[^5]= M=4B,KAMB4?4OZO!DGHNT_U?DMK7_7QN%4F(/BGDZ%9)WK>S=,8IO2W$]?5?7U$^/3T-&/8&&N> +C$Y+.?%VW;ZE_>* M[3G",_N'C_ *A#C?_9@X$=+H83+Q(S+]@(J+!.$#GA\\8"C/$. <<@WZT>!%#>SC=UB!?L(]BG&/JAWSF(?1;"/8)_6L,]APVZ?+5?8 M8%/Y,MBJ+-QH@&=7R?S V^B@"=91DQPA6KD(U..D]:;HYEHG%FOW'*H;>2GP M=D-X.]O4KKP82^"M27BKR38U^-*A-W;J<+FYF:?ZK@UG(J51!JO9&:E&5]%* M]XOD)W@BP'@R&"NR6+.PP@;$ E$-0=0K'B"U8Y1F(#7LYT$JD^ AT'1M--6G M+*NR.(<>]0FF9I#I3/2^EU-YK]Q:\UA M!0'@FLW3H5J!>2I0R#$*BYFT%X+A49-6*V?2"@1RC,#Z%'EE9K#>& 5]"YW5 MO\[!/KN#K5SDE^7?7[8>KA%,EH_+RAQT04A!2$%(;@@ILL1$EM@> TIK5"2$ M36A6C:HZY37,SK]Q,%XLJF%T1J9 5$,052Q"<2%('8U0F)5$* 2:FB2?:HHV M#)D2-%5.1-:-Y7D]>OX2VU\2:>SEE):+0^H-O^@-,B[U?K\S4LWN8,C+8;;( MF*@3C!"DQQ:5Y>"%1'S$N]KW1&V<,&D=/%'9KJ4Y<5F9=Z M7Z5JT%2KFEQV8?,RZ7P,"R7[,7F+O[JQJ._EZB]NQ+L=-,I:UT #FEU-YZ7: M281:Z@3CQ:QUO3-2]-+='02FN+36+P2JH];Z(.]\002#N4-3?>JR,FO=H&IP M,-0X$5E5!H-;7(%1*.6DC=QS9" N9\8FGN;I_:ZNE#YS*9IKQ'M,1B"X;@MU MB,G&5<63!0YYQ&$QJ_9"0#QFUBCSKZ1O M8:S$;Y[[5'D5QLD%,M>:O2!6=M&5B5PCD6N4KX/,)CF4LM(9F7)7ETN';<1) M?@/!>(%^IR=@3J7M 15>SO4%Y*IU R^$N:-NH-89Z2(5B7\TU:=-*_/H=-"2 M2E=7L_CB,A6I;1DU#T% PCM\*S)->6XBAV8_WPP;987BN7374$JSESB@;B 6 M+W5 (6,;ZO(Q.(&I&\+4F8WU==D4C?5O&6\UV:%#U).FRDN-^(T%045C_7), M-&S22%Q=Z7=&0ZVKZR).=8M@O)15JLB=D:&7;M G,,5C[/-2H#H6^U24-YDSGH#LRJ6@%PE/>=;[PWSW8^,=6>+?Q>!=).O0@3QBG92W 8=^3Y^U5( MTQZAHS;*OZ!38O6NH5;EQE>!ABO%F(0,$#*@%AEP'0]MV!DI%<;K!*,+1F\E MHQ=R[0)U;VRR86#!QNYBX-HN]JBB!2D=5F]V^7+JYVY5Y MF\80?J'EU/#?J?T\^B?\D2QW8?E/MLN>J\!6QD^[0ZZZ5^6>GC";[4Z)&][? M#8'C:\>0TD=%(*_E:?V/WR:,W#,UI -#&SQC8@5SR9M)?S\?Z/HNT!_AGFMD M#C;(5#HC>:CWLM$K"=[:@;_TUM \LMNPD7&9?8Q=!D*@J&,M W*?_.5UTBK6 M=BE=Z$6OXYO%@$:@[&"0XH9]_?K%GH9S('6_![N$ B&.:L5/CK_NP5>_9#_7 MM)ZJ:[E?]7MR[N?[;B4KO;Z9?\F^6^W_7.L/Q*+J7Y1^\%9E8Z;Y87VY5-!U M0E -74DC&[D:^2V9D,68^)(J=R6ECYW*4OKL(D0\X?JS9BIR2-UUX%#"R.%E M!\C>.JTW;IJ$$9G]J=V"VB6IK6]3&[WB YGT@MP5@/N]9?O2_UI.1/+D<[*: M^!*5F72\B>QS[RQ6QO7*A*%U$@>_LETIG'L1W&,:_%S.RFI@6S?T8B7R9V0_ M@Q_KAL&]]$K)Q$4K2[\1U]=_?97EA69OJ' .Z-\]EZSB'H72+,IILU:Z((*[ M=RX;)!NF5CLCDY>2CQI.D03K\/1N5;+.!9(P#K:"4+7*6D$( M]A'LTU3V.;>3BJH+]A'LTQKV.3>I(,L7 XX,LBIKE:=Z"(B9ZW",9+-7Y1SI8>Q3-Z(RR43'1]YX[--6G+2MSV4RF!0U>1G7<6,Y-%1/G;^0X<- HZQ+; MTZG=OAC,>)-@O)1UJ?<[H]+!-8$H+HW+"T'JF'&IRP I+:O^"S>8%WAJDH2J MQ[S4%5"#2M<<\#+S^HAYF33J@H62_9B\Q5_=6-A7#$$M*7Z,)EGKNHHZ4.L. M^U6=7(I82Y/0>#%S'0_$13"X*9 J9J]?"%-'[74=3*I^]M!*A(.YPU-]"K,R M>WW %*&1XQ!R&0^^OF',ZZ^J'2#;YCJ!FY\K9S;*5CE /F>#=?&\6^>^U1Y)<#)11H-:,8L5E9\92)52Z1JY>N@89,@H"$=_A69)KRS422T5Z^D?O]1AF:>FF]+!O)C3(\AYW1L"O+67$N@E$W ,9+V9U&OS,JGR5V<,#JJ8'&O_#+FZA7WNN>7QB7CQ;^+T*I)UZ$69W4[*7X##NR'/Z M+-XJ2=,>H=.H:5"&@NK(%B%6BX4B1)R A VJ1 1?SP;#+L%)QH:S@ M9,')[>+D0FYL/5/)LJR,I<;#ZDJ-!1<++FX7%]=FDU<5!C#[S-96M(H[JM3. MVS1*\ NM;H;_3NWGT3_ACV2Y"\M_LEWV7#PJBY]VAUQUK\H]/6$VVYT2-[R_ M&P+'UXXAI8^:0%G+T_H?OTT8N6=J2 >&-GC&Q KFDC>3_GX^T/5=H#_"/=?( M'&R0R7I3][+J1H*W=N OO34TZ6['/_L8+>#%)^S?N!#;C2QZ71H/\2MKN.]+ M+[#Q!_<^ :UH/Y/7+_8TG /!<#O25\6@[F\NL<8 X2CLY"FJ,A[\3=D^A F MG^IK315SRVZ,NI@RVK8@/\>\\=ZR_?^UG(C0U_@&=W_C>)/O&P97.A(!ME\B MEX .ZQP4V"D^^D\4A/9LM26O%05%^)4D]K@MX#56/P7Y+3O@-U8HO8#" MEVP7;K%[7RD13Y+U].23)S3UI?%*%T']G7&U'2ZS-Q$L?]XR?' M7_?@JU^RGZM:;SC(_ZK?DW,_WW2%6D!/Y_O+UZY7'.F&R+XFLR2YX.UX3X=F(LL"%X!P;.I M 9<1R[=!48S2H6$S]YW![5?"S:!6O;T[$':N([2;]0C*K,C@NX"_-QO M@@"_ /_-;L+)X+^VY]ED(E.K\97M@EOD17"/:?!S.=HV,)_VT5LLB#^Q+4=: M6LNLBU+D75MZ'-_28W6YKY8Y6']DIR7 ./FG&AAO^#:W7%GYG7K!A0_JE:F2F5FL82Q[/LH^4-06]BBP#!-4WB&HZ8)F&6 M3_YO-/JZK8%F]@\RO?N+^%X>]^@=4#.F(BNOA?H1C"08:8N1,MKG=+X:"+X2 M?'4K?)7/384=(4,X0H)C;L01RF>9$]P=DPMW1PQB;MFO;F'N714SNW)>NY4M M24K5(ET\9#K$'O==(Z=_CFASSR?Z"NK66N%W7.L.^V":BO;W_,.,(Y1EHW)9 M6,F=T:"\OR/0=8-"[&BL*HLV10BQ1L"L1I15$[D9JF"/R5UU*$194S!6IR@[ M-]8QQ*/=;#?"VB76+:1'B2$P9>6PSK/'/-0[(V78'9AB0D=3T%=00M<*OQ-D M-XXA+&-M"IS=GI0KD<@R-%IXX"Z0=RWDG9_Y,30%$ 40+^UP#X4YUS",U6G. MG>EP#_I]/HRV6SB,+M;?/[<:4/02K9HT?(N0(A*$YY*G05_NC#2SJYI965-J MU BW[8,/Q)D%RPN6K\AJX*LR:]!7P$C-MOD_=\*58&[!W.UB;FYX^WBJRJ"O M5IFJ(EA:L'0K69H??5TX/VC0URK)#Q*\+7B[E;Q=&VM7$B,>]'5PLH?=OEYZ MTI9@;,'8;6;L^I3VV8'Y06>D*LW5S85&\8CA B?; M(, OP'^SFR!F"]1E-8K9 F*V0(%7Y/LXH%BB_H#K1%NC,U*TKJF*GIJ"F?@_ M6ZN9FTXX=S/+I<0(KA%2=&4_@!/&->+ MM1TVR-3*#+)\)(L&J+>$O!*>@2: *(!XH5C/"4:VWAG)774;*3GE9[TUM]ED M,5XP>76KVWA^*)!W+>2=[U8K;3QP$T"L"XAEW6H%SZ[Z72.G-:] 'Y_H*VB- MU@J_XW:JHF ?: [&3 N@<23FJO&L%54(LX9AK$YA=JYKK6BJ$04[QZE=U5!%]+,AZ"LHHFN%WPG"&X?%91/SQ$$.=SCC"&:E MO6H\XC&[LI'MJR>D')_HXTG*G>%5FP@X(>8: +0:<5:15SWLC 9R5]?$@753 M,%:G,#O7JU;[&*P11]:U *+81+CX!47GZLN2AF\94D2$:#R''%09])?95>1L M!.^\J##OS>I+E'4)EK]EEB]D-M3*\R>8$V4GP@GF%LS=9N;FAK?+!M=4M3/2 M^EW5T(0^%RPO6+X)^KQX1%/5.B-U(!2ZX&[!W5=6Z-6$D54LX.R;7;U\X9/@ M;,'9;>;L^O3VV<%['!HW[#=7.^=,C8O?Y6.T@%V;')HBEW[.?Z(@M&SYFH&CX)-R;_-B?3H+>#)*T1*8 ,%R50*X6-8(F;1A9[T,K[D$>+/#0()W_D[B87EK_$@O<#-IZMO/Q)7&\ "XM1U*OAU\ MI[EZ'CS&EV: !L\/NI+M3IP(]RF^&_UAE_[2GL%3)!N>X_GDSK&_$V=UA^./ M[EPOQ#E((5UR\B8O7N1,I;GU3'#Y 7$<^G6\LI4T)J"-"/W,)Q/,&%Q)WHS^ MVX(GA/0%)UX02F,KL(.>]!!*7\DRI .MF/I1^W2JE4:7E\RZBK^*!UYUZ0VS M)/,)919P-BPJ#&"9\,X^N]W+G+CTH;;[#+_ M+,CX3C;(!!N?VI/26S[UX Y(PC%Q;/),]JYX"4]$-*2VD.U,F' MOXO)FWI#VX4O=A\F+6.IPK:=[CG>D6WYOIT>XS[^&=DQ&9(-#[:>%V_ZSH;; M?NZ6=V/0+RQ$BP1/!>.%@@<)&,'WKI<0@Z[[Q0KHK9]<>B=X5'J=/^W;YN1W MX=PGA+ZS"SR:C)H"(L*]#B$/<=9;BU$JF;8$T^[I[:[ _[ !RJ-C!8$]L\GT MS0H]-)32D>7\'K_W6T#/-US^-[C=&\>;?-_(=Z,C$9#Z2[AQZ$>D"\H@M&&$O=C@'*GP" MX_C_B"4&&S6Z W&1B)5Z.&*U&Z/:1*\PEA4[+QC+F@%3O[>?R;D*!**%PI)^(@NEZM!'L0*R,D/3EM9'6 MQ\X#@V[?R!ZUB-H;@;TCV#M;DFLRXL[HFN6MH'J*=))P*BR4[(?I)7]U"UY; ME7,EFMNRYDKVF1>%7X%2#DD?WY33+DIG9':-G*SYQGHZ GJU0>]\Y:(B[/B9 MEG4+3D*Q^L_MH*](0KL0:6Y&UAS.0=O28>]^Q!E##Y.)'Y'IAS@UAIJX#WBR M;[D3O/*19FIDF^V>('\PL]S0NX9:NDU@A6BXDC,F9("0 1S(@'UL7YBW=>1M ML]N7JW)<.4Y0Q7]/6.&-1=\PG9@4[Z.&641)!MX]S5.TG\DF>>@?VYE=\6OV M-Y=88WBI*-Q_2>:<]0I8U6%-LKJ=I)7^<[X^WE]:3^1N[!/K^QT-FMY;SHNU M"I#BZ:PNV[U+$W#WW?>^X6QVL>PVAAV /HZ>P)T!K!(??P5KLKA9BS3W41[\ MS2;JT+"LZ6"JR(8VG9A#2S5-3,#L1,Q;_^8LU MRMO&':3'[*XIZIW.Y!!\0Z8/8?+IX'#"8LR<=ZB$[F45,Q9SLOX67<9]8BJ:-$EU:X2$&RY3- MR\.6S>Y6QC!+C88?_[U0VR.YOZ6Q] .)M&M-,]AH&H 84"VC922@D$,AZDI+ M8 7B8PIS$'J3[PAT"SZTG\%]=E9 !6?*DKW=%4OBWDY1W4[[3O*F079-81,D M*U&AZZQMGT@6_-_UI#\C#^D1IY?#$R>IQ.3-+;DG-=ZIW6R>SKG4/T88)R('EC@,\SQ3==KS29 M6^X3"=@:M\E@80I[$.=DIU:#]R>@427X U\$OHWO@KLQL?U)M A"="#P@RGH MW9!L$M"/$9^^.U8H2!/+]U>(6?KKGI1"< R$6CR9V3Y>"0'-]K4#63>>HKI M\GM>7+)W\_XIL5,)Z7"MO0#;"+@.>&8WZQXN9\48M@L0(](K\F-)W(#\W)5< MP$3\AKA8_'1*2T70>J%U#$"DD-!GPN^\)6%2/G?KA@# MQK2BY,##QI:#6R(%XL,ID\1BHK: M/"WPEE#)@6>Z[VT72(;;_L$-0C]:,-UYHC(XZ[WW&LAU$&2/XB !K)=B:&(% M"_2G$R?6J(8TXQ +6ODMM!#J0<_ S%$N6RRP@]>+'^Z+ET(L&0&U$XT MB2NBL#P+./G9 E$QMATLF )VG44ABNP-[>+BI,S]R8]8)M&A9S,GPNH(JF I M T[ A['P?G =W(P*D&@<3'Q[27_DHSA&J8J^4B#! APF+]Z@%0,/_XRPDEYU M?GWSN?,S%7/O(M^##][]\27^(!9"(&5C.48E3T25*]SI TASV* OT9* J.M\ M^ C7)04_J!.G&ZB 1-E%2T_Z;_RO1&8S,D$&4W=)R B55K9 MJK)P[@5;;['S"JFMM^***#\6RM:FF#,6T&AR^ 1T98"R)-$/G8=/CQ]B:E.5 M3DNP)NL2(H:]>"_I,K-[TH7O@R6CH;/J)CHL +LJID^P,0+HPN'M?& 19CQM M%A^K.+@>3$$7'A'T6L'2#P'RX9[RKVTK86Y-#VUXENI0R.GC;H9;OU)*9R5T(Z MJ/L7^#1>7G2!M'ER+YMBL[;ED2>^ 3W+=!VJZ3@*2&OU.J'0-ZN8J@'7J G M,> =JFKE!'=*9=NJ]X$PY@$7[3S<5;A S++1>MD6N.5P=_8"B^%.5Q!W?4TY MB+N+2NTZ;-+CXCQYQ6OHDWVJ)&]-5Z=6-RG'CYACB7[HKML*'U^3G@4C2.HN MJZ'8A+_M\MQ[9NH]Q@;U(\C4]R!2J=7Y*UA]>(SYS7M#OJ3L+194^ B/VS2^ MS3*A"B+D@(CC$@?K9@W6CR0T<()+@[$>_#'E]CR9D8BFJYHKZ,=.HE- MYD/F:U)[A(]V@<*2K,0%^HFFO"8(F\73VV&HP]Q]]L:#0W?>AN?XC?OW_K(1 ME.L%2O#\(&7294C<"M=J*Y3M!)X4!2SH?4*L)/:A4W&,K6O@Y;R%G80/6$@3 MO/0XEF*3(!UJP'#EL7##L2C OB WOWP5F;<_]P@41YB:]]J-[5*W'I%7GD."@RT.'6N=Y3!4N4.^, M]%ZVC_]F?86]I;,75]!;PC%T7:5_*,S #O(>+=>BP0;;J M/#Z\[?PL[7V]B95CH59(>YQIULNFU9P;8ZB92_3J"$%+A ]0XCPNJ7"!.+#I M(,X*#_:Y8+M K7"&&90X%-7825$065CH+2Q-96!RLI>XL MK$&G8)>ZKQ.PA2.'?)IM.#-UEIWM2#=0"G>D:UHT<6_WNFL&([*9,5S&(::; MY(C9.CG"W@ *_3 1UCD]1(M64W,MII#_G/L M_S+*-(@4]#M OT3(22#?$O*I6^03S0E%_45\+Z=6=:!V1O_U-U.1E=><-%FJH9Y<< I/[U:,4XR* M.27+$5IG-% Y88:*+)T6J &?.TY2HUCZ.EQI5HJU,YTQM5J(Q"V\.I;R(8ZY88Z\C< MU H8"_/$Y&RR(F^<=0LAW=\V*.=# ?#SDCI:D:V;%[$AKE!E>"894Y]*,+A@\,M'Q:ME<.Q"T!V:V;YHC6/P M$X8X-+0E1KK;RM(G :VQLVD,=5V(%W<$P5*RU*>I[B#8116V+ A2%89!TC3T MQ&[1_^V]8,OO+NM+0J]<8 ]:'[N3T,8_UI-/""L"I"T%:$?<=9M2B38])_[2 M\NF2XL;8F58H:R^VB\UM_P,78TL6:[ET8.<133[Y,[)]]J"=?M_PHEC5R;JX M8-,4H$L(EVRU/HT?3'NEKGUHNF!+"NCT-=:RA3586EHK^M3Q2O)<(N'J5TF/ M&-KRA?717GI8T(NUD$F;%T\">,[3>Y/>D T1*;)Q43CR$2[&*[R)3?=@3<;X M#7_*Z;.3)1QM39-N%76HJPI=67X1('NS#:(PBN!,D1)IHB>M>-*;!1]/Z-BH M>&3$$_8HGQ$<:@=W<$-&\#8[MWN3K?OQTW^G>+AW:2,C%MO0!]FRV M0X=]$S"E66CB?]]#ZX7Y,N]I]FZX;IGS=+RM:8 M&_JE:\SK%,^YI>2X7:S/]"O68.KG=+]EVLX[IZ>4F[2.SK#YE@@[,G/@L&!? MSQP(MH<.M*Z\5M-ZJJZUO+Q6+.K41>GU%R*WJF!1I^(.3#R)=4F5WN'@(%I. MNUV??*FRY-91\R-\4H28URJ6/]EOXYC>Z)^7+9J_7&5VBRBL7HS_;XN. JGU M(E5T@! KN_;*A!%ZBMETH&N&H-MY=+N%U/2/)-R-R- PS+'^N&5R*-IVG)?W MBGR?R;TJ6J'H[YMZ/_@3NF_')HS\##%A SD'W"N/\V^63^* MYB":<2U95=7['&0*MQR"A6R>C(.PQ^;A!(PRG1V5TYGI=,M(X)!'')YJ>U\* MAUFH*5CY)X#6-J!EC%:^!9Y**P",;(E/[3BLLHC;Z*D&YY8N+2+,GP.Z,6YI M-F=1/T,4(M5!';Y%5H5NPGYAE#C@;VC6^AXUAXV&^U55N#>@@K!$I$HPKF#< MBSA7)5E8[XR,?AE+57"OX%[!O>>ZI(6XMZ#Y3V=E:W)6/POF%LPMF/OR88!+ M,K=!@YEF&=_^^LQ]0F&_F N>3O)$89XNXTS_BHS$CL^W'B1]B"O$49?\G)6=%30'..%%\>$4 MKSGO.F"U9<2K"\]V 0$*Z*D%^)C/YFXIT'[>@+H M9D_6E)97NG.YJ,.-&(X<_YQ8@]6L>IR'9\MV$/]WP+IW7\%^E]Z2<0A,.HG\ M4TJ'(NG3S@/^?RD>58VH@%G\""L!/G3D>(*7C>[A.-HRWA M*=ZT3(%1B5/AQC/4J1SU:6*S(\XO9.)806#/X(5II=?ZY/,A#'U['-%0X3?O ML^6#-Y7'66IGI*EE6B84;7'%>[)]J_!7#'Y'YF>4JB:E"60V M'IG'JC*K$X>8MUGU; =^IR(WQ@IY8',%_/7^@A%BNZ&7G.958X']Q8/WL1F"5?A9TK@ B)_9O\@T[N_B._E<=R@ ]QE*K+RNCVA((&V M0U;%'J.V"MAEX65T1HKO6PA*P3Q+0C4PRI9XM+ZR^ M4$#A8 [:C\^>3VNG,2C1:.@-%,J"H7Z9W'X<-&U2-?S6-[:/C+@V5NNBM"H5=ZI#@ LE MO4\.\%$>&^'8]%)L5&C[&N!AM0J'M9D!)Z&OT*&!T:=->>2<$^)273,$0IN+ MT!(6QIGB$?NV#+/BD3<$MJLIZO%4U=\M?S)/\E0S$Z(N>.K&G3EV[@CZ&RI" MEY7,D/D":4U9F:!C**2"5G'75T@'/%O!0X*'MGCHU,C\:3PT*-M,2? 07V@2 M/'24A^K+.#?ZM.E)OXKX&$=&:\,S7NK+N\WZ&SG-:AKH+!9462=W7:\JV0Q4 M&MB&2K:)?YEPVI&M:U; HATX+ ;#(P-<*D3?L#/2!A5WF140;#P$L[;[I1 H M]T'^:1>(V%X @;>67U-/PFUS#[M+VA;72[@U9+FRA%N16L$EVD[MHWF)M$A# MQC-BN;10%]#B$%HGA_4N@RR5)V3=6CRB9,+MC62D']/TI=+:3E?QFJBI:1K, M"D:KCH4)*DV?E/7.2#8K:'@O8,05C(ZZ^M6B:, )BJKTY6\R";?\B63#&:? M:4'E66:R4?;4H FGX3>+P]K,@#/19V*.8U5.F(!@TR%8QH0X$X%X;F6HW"/P MUAK"_D_D$BGIC7^99.>V)3<5>WF^A49!^\FL,D%0Z7=&NM)O>5V2X"'!0UL\ M-*R4A[#M; 7]-04+<0(FP4)'64@MDV.;Y2 %M)#*-0O=6A;+-9O7WE[FF*P> MF0M03P-10U$[(Z5K#"_0QO&*N8W51RK:@=!B1M/)(K\NK&J=D=KMY^3AEHGG M"I@V&Z:GYME4EXNK8)WJH-HZ51[2=2/ZWM9HGM2:AJN(OKGG' A&5)K8IP\Y(U\H< M/XEJ!P[%;(%80:5P O".!DKI-F("4QQBZF3'OEI$R9V1R0N@1 M514\;E#TTL<-33A!OUF$7NJ8H6:LTJ.QOEQ!%8: *8\P+66,7#IU5]6P MX4>V=($W.7EK#7*_DF5(%F/B%\_?+9__SIW!=IO-"8NIMR,3!,OW)%1U.O$[ M9_(+;WG^HO6GX*ZJK<=31R96P&<#:A#F3.MJ5SVA8#'!8BD6TS(AA#*9ORJ6 MY ZS9V(AV2Z5]6V6ZK):9W%'0;#)IBGF_@K3=!AA'@BEX>K=B/'$DR'>:?3/LC R] M]*AK 7@!^,M;]O4I 7 B1G)WJ+5LKFP3\N"N.1WCM@Z)9/582\MZ"J4TF0[X M5/D_/1+'E[49_*=VNJZN3DK#]M9:F5"/P!_'^"MD:=0VJD53.Z.!6=K^;LJY M>6.L$#$DHT8[H];J/*VZ#MK\>+TM1UM9VZ&&XBE-+]LB1J")1S0=,P4N Z8! M)V"ZM>"#&(512=R@EE$8P)FBS+[5,#LY!E!I295&9[JD#A,IKH709?$IGI!K\U];:K53WI]5:RZSM13F:F8(CNFL3FZ M63^D'3WC"^FJ;$GKI=+1] $H-+ETH+KPKC4KAG&+$,QTO;H8!(W.*&=FAD#@ M;2-0KRTE5S@B/J:=L/L.K,S M!GA.F5.>*S#5?$QEM7D]D-)X@I28GB'Z>5S/ #@OVVR@5W)>T(0C\)N%8%DO MO[:\V\&@,]+T,BV;! [;@L-*+(HS86B@5<'U&)9;ZQW[/Y%+D@$8I^?>ED]> MY\[F$OW#3]!@F0D8%TMN&IB8W*0,L@94NVI%!(L)%MMBL3+Y@UDN&J+=5T&W M#,%#G*!)\-!1'AK4EX)KT/):0\X6E7'$8;>6"7/--KFWEWTF9WM/7RK]S) [ M(U7-#FTJ'5*[8@)D]>&,6X3@L:&>]71K-A3JLV@"H0*A.R8)'_AD]:R7Z*G+ M0P)OPS-Y1%_=&HV26A-X#=%7MW%H*QBU.6* 7"3GTL"^NF;_^JU0!9JJC5]< M TL#3K!T:\$*T5:WDAA#+?F[AFBKVSB85:O'JTVR-/",4R\SA%S B$<87;(' M>!9$0TY )'KGBMZYU]/RYR6DF?U*3A2:<$@N('AI ^!,",K@>.G^X5D *IV16?[,JBEI#)S8%,A,,6DB/&F7J9+*/,:7$J-]U^H*P+_G=K/(_HZ2#;; MC>@YYBAYP8_1 O9H,OHG_"QYIW@O-!TV:^D%-EYP[Q,'KGPFKU_L:3B'G>RC M)$U=%;]I?W.)-8:7BL+]EZ1>:0+^$O&O@#<=UH0IY?'N,FJE_IS[R6J6UA.Y M&_O$^GYGS6"Q]Y;S8JT"I'CJG1:V>YPR;ZCT_\&P TSB^73W M[P&NQ,=?P9HL;M8BS7UDZ;_91!T:EC4=3!79T*83YR$S>3'I$:>"&P3]_L49YV[B#_)C1!Z9YIZQ-@9@+=G7_L6R 3U'X:?8P MF42+")B#3/?%"^A:O\&-WS@@@C:R!AP A)HB:S@1V2;.1:6_P18HO)!V=9C M_XF"T)ZMV$OCT^$$*/1K;AZV ]PH(6APN%8Y(87@Q^,\"]QMOY2T) M0U$@O1!XE!5(,\]QO)?@?AL*^^D*%*.23^U@Z5BK M>]NE[T\O>AW?+)9]R.\[4IEN$?MZ(PIZ?28.X@!+_.3XZQY\]4OV0/"Q5F,\4/#'ZD^UN MSNFM]!6M##J/TT%0.'L,() JD,HEA=4\X;KCT:O,W.4-Q>?>6:R,ZY4)(_04 M(_25[8*_ZT5PCVF0B3(*NNT3>0?HUJ[DA?P0^6XH"J,A-'QR)SU:P5R:.=Z+ M-"?3)Q*?NP_4S<* OK1A7')D.71$SF)V1H60GVS:V7%YP1),XHIBBT#/-Y2^K*(:=T="H MH*FC8 O!%I=3%/K1H79G,$.QAD?#?F>D=(=RZ89'%3',+40!'KT@1,_?W^,Q MK=];% KGN1C;/(+$_#2+.24/X#( G(.I>Z* O&)<'#&RC^)"05]2X*)MN,A: MF@5Q@1T .>@5('!1,2Z.V%I'<:&!'BDU:X&O)A)<6TA?2$ L?S*7+'<*N_9, M'&^)Z:,WUL^Q6DLI(>J#.WV[(>F['TM,V,U#O-X9#=KA0PN<% I/%L3)H#,R MRVA,@1,N<7+,DBJ,$P/;> BAY ^A LK.M[%,+5K-? *H(1L]\7&&DA1HX9 M5\4P@@W2!$9:AY$CAE4QC"@XY_#Z(+F%\-6OQ"6^Y5"SRIHN;-<.0I_V81 ! MK!*V54Q6P/O#%E$/@%[MC+(GV\+C;#I0CAA89P!%P['K BEM0\HQ,^L,I.CE M['$!%#Z!^;)I/ M)WFE+-]27!GF[8>WI?-ZSKKD^D M%RN0BL$PTS ]9^H1P"ANKHL@0KRMXU-'1KCV-R"2BS*(6M?*E*(K.V5:7B4K M4XNN[)0A:I6L3.N,7"\C#\[X(-7Y>:=Y4>A)'JXWZ1G]BK!E_MR57!)*M <] MF>+/'IXMVT&>OH,7N M@K4"%,0@.,HE\.[2!RU*#(D/:Z14/45WL4KKP:)=2 M@EU*-Z.?F&2+YS]I]-?85Z^WTU0\TTD?I0?2Z'C;R=I/4:$9OU9K(G[9Q]9(5Q]=BPW?'"G. J"YI&^M8.)XP61GVW5;LHZ M8SS8=3)]".//\.;;#=R3FU/TK._K9,PIVJ=_[@CFO5;P# M/0^*;XO*9$-ED!%=VB[>#EA_>.1]UA >+8B$XM=@+ZEM_>@-N3=4\[]J3Y=U MM?XNZ^42F#ALU+C= 1Q[@I?M!WQ;]'M+)C'YY#7Y1+-?T;CVFK@\TKCV%LI= M<,Q/!'NRL3_*Y+^V- C8VDC>D<'1>TWP7WTO" H'XXS.2#:5[E"I:H1D Z+K M@CMX>K=BW'%D9&K%W&$"=QC#;K^?;:EQ'>ZXA<*$M?H+O%GX8OFW5H]0C"&. ME"/L90CX^WO;Q2GUOQ$K(%]P 9]F?P0$^_2%[#0H-7_P+5GZ\!@:0<+\TH4' M!/N+_K,P5PVQ24T7>)F3=GXB3;E:2![)0N(0DDJ?05+-YB2*#I.7 A7=9!R: M+-F+I>\]L]F;-U;87XBS!D<*17CD+.QL*7?-8;9NJ;'^A8!D"I)'$D]XA*2" M4\W Y>4%DK=@U'^=6*X+-KVU7#HV[OIY@OY&3*C!D3P:'KD*6Y*:W<&@1<,> M!"13D#R20,4C)#4*2750.M506/4G@^I]Y .,(I]TI1EL$_PEV,ZE$ ;^ 28[ MD@O((Y/IG9'>[9NE@SG"ON<2D4=R0'E$Y* S&G0'PZH2S#DQ[QFX!@VI;9>6 MN8ET98S^$C4OS6;"!EI>!LXST;I&SE"3\TROZY=S5>0GW"R*&VC:F(ABN2LK M59U47;@4J>6NQ6\D".XE:[/7 *C-9K-&=JGM+N-HM(I+"Q46'U$V>S@-_NZ0 M');;R]6%>1$/C16CJYH53#>YOC*IR/NX79@>T2;7@JF*!\FRV=65,CVU+@[3 M6W-)#E3UG*G"\\N-;[0NOTK2\"VCZG#;/I+B8@=/V4$Y:E7EKU2QE5=RQ@0# M"P:^KL=Z#@/309]=O7S0\LH,7']+C+TDJ %2M/[V@=8#UU,!G+^"/7T&\I9T M=6I1$^R:Q$J*'F-:R916*I>TZDK+^2I /D.)L9,_0PG)6EI,,@5C4CBW0LGR MB>3YTHOM.-*82$$T_@^9A-CCPL%06B"-5](DGM,>2'-K*EFT&<;$\OT5-KAX MMIR((+K_7NS0:+N&22\F.6/A.-@(1[4S&O:RV5H2D-Q)(C\%5VA4NT+,-.CW MLJDOR1*[DD^")1#??B;.JHM-2)P(!:UD810S8/N%.^!Z(>P5<:6E8TW(%'XI M 7J>['X6 ;84;UL+>/Y$-TCRB[^(N817@/[,M5_:*OM$(>FR+KE$:=Z=ELZ%Y=C M5P()]M-4#JB=XF^R1R]>^DTT; IH'I#*=_C:11:7\'^9VY,YD_$+ MRW:=%7910P^16A\3+PC1]/#9U/E HLT9".)FB@ID2MLBH0=)C^2"$/Y#*WGP M(F_=7[+*7F=#SGN=Z3?0Z^P+@T/23A3Y]5]V.'^,W8EL0S!-SO8YT^1LG[/X MQM(,[BPEMP[ B0GG4G+WX*R.9^QI.6M03FA.QF^C3@D+IBTWX=H !/B,^#[P M8LRRTLL<_(F)%@%R:HH\XA9\!8UO39W0ND75M^!5P+XUC MT8_&0 '&R_#U#&0ZNH_)(_#93RXL?)K(![C6]J8]Z4LB-SPNA5]!GVJ/79MP M11XK_&9;8]NQPU5,B2]K4N4I0L#B8%"IDW7$&2^_9'#/=:.7/9=?+YFJEA1" M,NTSA?G*H_E:'4*TSD@9#GK99,#*#=7JUJQC\I=1G4GZX-N6LV^CE=,,42[A M=X"[K\G*I8UU+HDM,6/=6L :T"I"VK-@XD;S9O3_V')8R+AH!%$KP61Y/#7H MC-2!ULL>VNDQKV MG%UZ@8T_N&=1RV>R:37[CVTK/C[Z[&\NL<;@ID;A_DLR71&O<$B-_0]E8X;%6 9["IIT9\&32!-Q]][UO.)M=# W, M?9JBNT)W^QY@27S\%:S)XF8M$MBF(&/^=CPB 4+C&^VL#((!)0YK9&*-\K9Q MOW.JY#JG:BN4 *J+0'JV_!4ZD-0)6"U9"WW'VW3M1_]S?3C9D_!> M>*4T)N$+GH_9[K-G3^@1&EQ)7=SD"7; _-F GJ;A7"0Z#\ ->]('<(2)'UH8 MV++]2;0(0JH:NZ D,9;EQ<$M4)]V*/T96:@GDG[?R7*Z]%\;M_O/R,8RU^3Q M8UJ3P)Q@WYM&&+X %SL^QF.^]Y0X(+Q\-G$@?>]>)I11.";SA6 8#RCS>>.^ M?UI[[SB>81*2*>PT#H"9?85/@QE3[:+L7=T/'\%>@4 MSNE&D)@^:^N)!J(LQX$/8KKNC8M0T^#"E@&]X[T= H4GY_H,5W:G[T\]=VU* MQWI3[QFR65US>$4TAR_=W/S&FTA3S_;51F2E VV%*Q':G/O:\HZYQI&><2?9 M#$736?&$;J!VU0$O72%NH<46<+PNFFH=X(0CK>HNP@DZ)C8,U:X^*#T(630A M*L(* ]%GZ K'.DO=QE6D#%)MM\UAD(KU,H*AM *!UCA2)G>95@!6Y!J7>!# MH13JY 13*(4#G'"DWNTRG*#2D?!R-N%%J(0+,L*0!LVQ>(C0LR.A(0[PQ9$6 M>"?R11;Z6F>DEN^;*#1 L#FT%/-.&$LJ2&=6T&JQ)0]CTR[\:_B3+)L!EEL+:SSSFBY:E)7S$[BX=?X MJU0BH!5L%8W,(NP&'>>%!^Q8U5MB9KJ7)/G3JD-:00271"[Y0?R)'=!UN.0% M.(KE 20G[[08FK"5!7//#^]HAD!R/[@562PIF8#,\7WICX^3?%T_O;1\6OYB M;6X;U^KB"Z15L3R\?C?(<%N$4Q#88PU'U((=Z2Y M"_#?[7P(>A2(.P[?;K:6UF]LBLTI#>&%".SXF*P\K&6/B=6-?QNG:>RF@DC$ MP2RRN%[56E&0+UC"!6[(FN2S3<9%M/3<+5A,(MRB;33!]W$>)5T$MB,G M8RT5QRLI ,4&>SW'9@<.Y3\KB!,V@M9E#6A:3]6UEL^Y%XLZ=5%Z_4D?K9H< M3CT\FN7P.\OZ?X=9_WLC&X)V.[3[B 43>TDG\'<*#=<);Y+:[PKHE2?;M7+= M3G9O.:=LN@_8.3@\3@=!X4U9:.663&87=!-% /O.K=[:/IF9/LW_.Q1-@8GG3[NZ]JT[MZ&/=O@ M?]-OUH_"9Y%&9V3*W8&:[<+8V(F0@F/:RS'&]3G&!([I=S5N)E8*CA$<9X=599H"3R52MJ\FE"]%$JO7I@\O4AWC!/*U"^*&_(G9&A=!6U=/9D19]F6" D)QA:,?>YG:GT-2 J,_\M"FT'+@UHS;I+JZP]B;BT%):._X5=<' > M(RN"MZ;>23)S9E M+@H#>UVQ;TWFR2VG-*TQ+A:&NT[(5B7W3YL*XC4EL-Z?EFVSN2%P^[F]C*O2 MX?ZVOU6;#MA]FL/C6;L%XOMVZ/DV:V/ .B7 %ZMXNB4C[M+WGN/%;MV,/F'3 M^I_V4;#]Z1VN;"71@22LX8 GS8FSE!:$X&.]8#,2(/BOOYF*;+R6R+/G/".Q M C*)?#L>TXS%YVPF?#**@([XZTD/@11$DWDW+F5/:"'ZTZ\?OK!6@AKKAWNS M&?'3K1R D3Y\VPNV#7;IE%CW/Y'+M!J%//9A2!HSL/$9P!;>B[MG) 853R%* M!=IH8QK98<*'&X[;M&JPZ!-=E ()"P=TVD8R8BC-SI[$W@Q%QWK1/>D]+H"* M$&Q@PAC+VI4$L['G0"XC1@?V=-7GK2OW#T26;A;-N0M/09VRTZ I# M;"7P' ]'.N/DWF@<3'Q[W3 E[\5?YAZ=,A;Y*$DWM\F]-IEH(GUE+^EEQ;)% M9PZ#V,1N*ZA@)MA?)FXDDS3+B82UPYM8SBFY4_%(=.GS3#4>-$_4?+1!B1T MDDV>#H%W)D3ZZ(%RD&6^1$SN7+NZ1(S4^4J>Z) EV0Q/%S!WJB(EBUUA+W1/%U,Z)/8C^ M=%9![JQ$D)H+&W21YZ(C&;Z))TGN:4HT&+:E*=';I /:Q M"9D.,V=0P;]VL MK-W=B0RY9Q@5SC2JJN>.KAO5+>IP]Z4CN04G5LDVJV)RNQ7'V/_EU,+\5E(C MF;0JJ?*:&&5KZ$\MKBY;W5W]<\KPP["A"+CQ"N+'"+2@*TJ(;Z96Y4B.X:.U MI)[F7V2:F(N/8"%])&&,E**'#$:_,QITCD=TU=3,>H#P\?/7=24.F=FG_.W;N>SM=YK]@>OCY;Z6W 4IBU%4R'Z_:U M%M6<"09I*X..$U^ "^;2\[ /5\B6-<:J68 MX-[+FB'-E#AO(Y^N 5-E@#[)/*8NFP8IO5B!5*&8WV,9?@!,VCZN[S_T$R8%',&RPU"_/P:,ZK=1 WNTRY,U*&:B];LGR^-BNSTK37G5TL M#A]73[:@3\JKPUL?3VK",96GY,?4?,Y+.>SCIV_OI$&/B:!F_5ELS-P'-[3< M)QM8CF9T!6_M '.*(S\GG\L<,E3"9I/I0QA_AO?6. M+ZV0&@KV!"T]E.^TS&/*9FB.H\!F!3<^NSW[GJ6H8AE(\FM[O8PX>8T9J01' M+V*:.,@37/0=OH TMF"!FZSJC42 K0]AT6BL1 &910ZL"_/:8UW$7K#,',2O MDSF91@[Y-$M6_MX&.4E^@\=,=]'[9O6[]1_/?W3@N5G\#OMMR4?$#/9MY<\* MK#+(:GE6HJ;U^CJ7X_N./CSG="4A)C '*?0K+E^P[D7)O:&:_]65%Z76/\F1 MG^O/QG1E:Y'UMHTQV4K*E3()N1=(R^"0"#7-P&D=W?Y%_P'FV@.LRGHBTF_V MC$BO_H]8_DEDO#Y#W]",-HP^BBEXEZ(PEL(]3";1(F+1UO21@*#Z18<+@UOZ MQO.^2_^+ODLE:?1GD8:[#*.W.4[_65 \D)!\<:IRF]RT)^1@:KM!A_TAAC]H MD -UYM8Y$"QLP->UE&SYAE4WW9+J=II.4Y3=4L,=45RZ?!EM4?O%8&2*8K>G,]JHN;DN9L6DKMC#_J9V1 MJG0--=N[,>,;"M83K,313H2"7:9V1T=5D_I7<+51X?=X^3N4TDL@M M@^WSJ3(I*A7Y5)COK?7ZW#E58FK-:9+VR$R)RCT*[#/?54TQ:*LI<"IH,Y^/ MIZIL9F,?PDXWF06X6B:K,E9A3IYX"D)F9T33=977G(BI6VAF@SNU@!V;2B^> M_YTVCKYFJ+U-QM_@0L8?#OKFT/8[!0&'Y.FIG6"XQ<&)\O3(V*'CMM^NY!SV M^YV1J@\Y:8@B\%*Q<7<^8/8:=UD(R?D0*ASP%.AIB[0I9+T-^TIEUAM?C9D8 M* 8-&8.Z5= 01./_X#@ [)U?459/VQ-FJ\D]:MN12+&7;X_X/-(#J^(PW;"O M=D::W#4KB]-=__11L-H-LUHA._=\7JLFA#GL:V ":UW-R+9=+1S#%(S'"01O MD_'JX;OBA_[#OE[1H?_%^>P68K_9&FR< 56EUU!Q5/BJ7D/UR>2[PSYK(A-W M2SLA3G/"TEH;PCDR]?:#.R6S_5)Z/?7V5\^;OMA.KE@>8,9Q]8E8A[9*A'2* MAW1B,=W%OD(=Y+@$.?JFH(]@4!]!K]A' MX&' >@MZS:@]0RLV 8^75BQ5*B@N7U L*EZ4?M%>,TU0>_F2\@)F26,LP?8U MP$G/893VS6"L$N49BM8[G$^MU64""=C.5&_.QB4 M*>85K,<7"&^3]>KBO#-2X62Y,QIV-:/T*%?1_T;TO[DV@^WSJ8:7\:ED1?2_ MX1,()TK:8;T>A:R*_C?-@E-!F_E\/%5E,VL484IV=JOH?\,=N.K"5GI^8PHJ M>FOCTBLM[Y-4.E+]K8"%9K#ZL5LF6O/;UFJ,AT>HTB5Q"*%(S'"01OD_'J MX;LSSNX5!<_N!T9545R.SNX;&-\5;6QNJ%<,QTL3;6P.AFGDB[>Q4531QH9' M 2W:V'#S+HVZ_D2S2;2Q$6ULRGD'EVACHVCH(QARQ3X"#VUL,L?R\&^DM^U& MU,8^U.@F_>3_1$%HSU;L(QOTOQO>*TI/I^UP&'7&_B^;8__='CHQ'#1L>+/T M AN??>\3!Q;Q3#9];A KJ:MB"O8WEUACH%<4[K\D4T=[!V\Y+]8JP,U,[PML2IJ N^^^]PUGL\N\H=+_!T," M\)3G4R#= QL0'W\%:[*X68LT]U&L_,TFZM"PK.E@JLB&-IV80TLU37.B&HK5 MUZ:#_K\-,'YH6R=O)CVB1'+#X)^_6*.\;=QAHF3Q! MA@0D<7 QECLMML)!U2L2 1P,8T06'-HHSN MOY3W\*NC\BM9AK2I#M/1:I]VUM&N2BA$&)?$PIY#7S63X).XBMS%M9H2TSJMXRD^,MFW&Y7[%(OR9E7/B$2]KPH^+V:!,J M!K+"L\MD3J:10[S9 M@8/ ]U$8^20MOMZQMZ,F_#>X_1O'FWS?R*UA1R(@S9;H(?H1J=Y*KVN3'RBI MN<0?AQ99EZ+WT5O LU>4 R: U5S_!9 ^HZB2 ,:V-PWP.'*,G 1FN>-X+\'] MWNA&0SL$FWK/D(MU"#[8S%6Y:#/7VVCW>*!-YBTD"%"E^\HG"PN$O_NTY0F7 MROYOV^%!WBNVYQ#@2"_[0ZEY69O@"T432.!/8%*@2_-_M( M^ILBAHKI0+/L)]O[T0YYG\3J5IT4,R58;]ZNIZZ6*; QD2 M(ETNPQ^#L_CC-NK)*N4/5 K?7KS";*$@6VA&Z0(*H3:*L(4AU$:-;(%&>&'& MH(U\##5[W,6EOC@ODJ&C- 34: O[XZ=L[D*ULOYKUYVD')W\Z MJ^#^-P(0)Y_8"8S[]!NQ A(\N%-@!\N=$/KO[+&(JC/N@CTGTX'A&#QGM,)""N>7C$9OC15,)[(P0A94TLR:V8XGN:3TU?ZU#H_HH^YM,"'LR0G$Y/20]5]S M&XC.=B)UN/13P,@O64]@++,ST?39T]P*8*?HZ2@>+ &42;SK"4+8[G4S5V&% MG.UBBC-@PR0$;++D57#Y ?Q)W9 ICV)RH>+90)N2[78 M+\E)3E%Q-'8OF\1]L03 DQ>&';%ZV8Y8U\_[*\B2XMRY6M+512%ND]GJR$L\ MF4O!B)657M;4/U]^'$F_.WEEPV,KNR:X1-J=2+NK)^V.2V*6R76C?(\S(_>D MK6G]MJ2M?8V62X>:Q6"\3JQ@+LT<[P7,5Q:/01E&J\%PD)Z7=6G0I&QQ(I8A M]X9J_E?M&?6MUI\=-FQ;=MA'^$1BY_?2.RJ]L>IR+44E$*"5CI:^];FG:3]" M3):]$(5SIZ'O% ZK3)CSAN)KM6 HL#(A6$7:[=$#N$>TR);6BL4MU]'&N/IC M 498Y%/K#<-_F0"BR,N]E;S<(XVAM@,:GV,\%3UTU>3.2,:AEJ7[\_?EA&_ MQ8!;%182*KA39E?66S0[4?!-6_GFB-XLQ3=9UL"9CTKI++XJ4Y&WL_$:&M;' MA"?V _ 6+7AAZXE(F^K-32H*/=$)\WX]M8,)T#B48"MI\ZWMI)KL40!V+Q!G M 3=\%G!B\*Q9 :CM&#Y&]4^,/;>2&F_))":&O"9&;IBXU5&Y?YTD65_A/,YL M<7P1HIQUF,"M^9%_^'[$,T]H_D][+3T&X3P&7; MN=]Y@I:GV#*VB#I):KZ^7ZB#9MD@8W8[;34SK M]V^Z'V2_W]XD&R9HJFOZ<5#=)SDW>]I %CMCU_O8[LOD)C6MY4&G1 ;<4)?( MJ_#&VZAT?T@=LS:5KC[,3H?@LN%76]3C#36(O!9KG-D:4ED,^6/7U I_-'SKVX%3+=]CF2V,P MF/0Y9Q36\1>[RRVB17PZE> MM2W7/[C-]Y*-IPTD"&],];RJBU_^<)/T-#)]]V,"/WU8X+\*,X^!%IJL9Q-3 M3C^"$,JG.% ^ W-@SX%GRXEHCH!+PA-UT8GBJ]W]YL\[0FIWO_FJ%79%M9O8 M05TSNOJP=%R$AT[S-8_9*''3;'K==CK=;L+=Z3WQ!S+G/?'-%O?$3[CST5LL M[)!JB =W^DBW]HFX$YL$F)+J>-C7)IL"I@^S+>OU8;8O?NKV-)JP]8"SVN73 MIQQ,*8L9] X5S;VL7K;XD]XQK\EQ/JX^N%.R<.T92 ;:1_S4="?N:UR3?NRT M\4,(=\=DRY%7;NM[TH ,O&9PEW3W#+ "YV+!L[NM,5S&U_FORB)WVCO=LW#TO/ M]L:>FOB 5_;/.UE^XY5CO03=N)7]R]R>S'$Q"Z!_:CE36.,D]'P&1A?7-.*D7"Q=+P5P;;[V/8]K[V(%X5Q4J;M MLRU$9IK;RRYL(^SC9J?3>Y>>&W!P$[='4OC!.>O ^\!:3EF, $<:'((:ZX>/ M22($I]LB< +H]1:(3 ]Q%Q#'H3!%T;>>EK&O+<_2PS1RVW*PN;"/XC;I6X?A M%KC3)(S@RZ6/6<[ABC7O83,P7N!K_._F%E-K83WA%!^&['V0@GQ7AC ,S3[?X$[];JY0=&)89(S;0.'>9AC?@,GW% M(51SSP%='KP#Z1RNP'.B'[ZQ0 8F9Q!9IVG0SSI-@W[6:?H:PE7Q WZ2V",H M ],O[L;X%,KKQ THA,YRI-B3<]9SI&+GN'MUU5%9^>",B?C!Q0(&M,X_.U8! M[XOS=\Z78U]($-)Y 4I?5J1<"K3"_?SD2O\3N82QLDE+FA3I5>?=;,;&8DAO M@0J=G[L[WEV0XC+)6H*Y\DQ8!Z:'!9W[05GN!")*K_"BSO8O\8O.SSWIC_48 MM.SWVY:0#:N(PKGGPZM3<^\)=#1U?0G0'8=T,G]V8L//60_B>!'T39+)9%V< M?H=/BD#WK':_P\,TD!"X#/I-]A,:Z@V ?E^^_A$@U=BG2" RL>-!%+%%"/8A M#>+"2N++D&3I3^G /K#]/D=^$,6O@R\-OA)YQG\OD8!(>]"L=(5[(\_L5IGF M@D/EM5TB_DUS^#X0[.!+@XL#;T'$" )NB(B5#X_6VZK!7.V<$>JHT.2F7,(]N*M41Z&35I5]W[@@-'M_MLFN)SD>0-'? MN7$\.IK>/SCXVJ>[.8V1XK+"*E-/D]E(8Q39ZU&A/J,1_7<,J1RT4(M]XK,^ M4? 3UM,!]RK>Z4S9[\1;+#PWEHCH=OOX>-PM.T#Q!@(/'.#"$NS( 1I/$@P3 M]KO]X7$)=EE07KV2^F%OD3>'M=Q7IU9AK7YICHCY(!&X[SW_5Y2SA=D!^PEW M]<&E%/I)D8/"+LN(]@OAFE;?6&0WZV7$A>U3W)C2S M9>_GAF=H9Z#U,;84+7$T\I3YUVM?$&A)$Q/HWU@(9$KB@?3@AB=I!(=CTT-] MJ]:$OO;X.-W&NW3[!)XI'@5^AC^]:6Z[3]I29$,]':BW&W>^H[_!\/GNX8#\X?HB<\A)<'U&=[3\9^9/DK_#>0B%B3N80=1GO2 MNX2^&XJ^S)'LX$LC_3=D)]+$AY[DHJP N/>EM1(%$@U;;J.IN]IF&)&'W M\13:Q7/C,3R"CD"8]J3_]E[(,_&[FZ=O8(2I*/BXJ6^])'E#<"D>1-,#\:T' MLG!0^J%X@RE&QVRTQS"X3Z8EGWUSVT#NM+TH'UT+)PJ6##(/W8Y]*Y$\\^3\'Y8)SW\ MYY;'8&+90$-W>P;)UV;ZIN?%[YO9WH[0C#PTC]ANB.$/8!^1Z?_/WG.V.=?,-"[+7Q*#T9"->= M&4_P/H.3=7POBS49>&R$9A>EF:UT[YKU^MYX@O[X!RPIE_< .I9=Q M1N/F;N3' 3EC"R4;*N>=CEMWVLHN1N%[_![=O,)=7=A'\^8NDMZ2;:3&OZUF M;!%YU(R%3*HMTL2LL;1C5RHQM( S(D?%7_=(2\L;+O=:"PV7SY0'[XTPGDS0 MS2_:OL50E6)20RBP&'9FZE52]YV%_4D91I?;:;D-=-W:VP2VP6"["7-'&@M7 MR5EU%5S48-#6C;+G:KH_Y[*^YNVZZYF>1Z!(IS2IZ2O&>Y4H1D?C%&S2H%&@ M2<>!$6PH#"RX0NCOSNAJP73_^!C(1S06/V) V O!(/P'!O6V:4"_Z>RZ74;4 M51!F*SKU'Q@^&Y+>M>#A?S>=AWEM@+GN41)_%2Z=:7/"OEQ[S[(?6Y\8B)?4ZF>4KC]8S&.S=W@UYMT*](B^ C#S$^1_&Z+$Y< M7F^[4U+3.JI*79N<5X/SCIOKYQWWNC=WW5IG:>6MEJA:HJ[LFG<\JR%U4,D_ MW=IZP+2N=M-LU5\\=5:W7]^8DO[&IY/[&-=\3CIAX]2!PS(/03_\J(X7_Q;X M85EZ2J\/G%$RNF;?,[:W0?2EZ8"R+9XI):^PJALOLZK#K;=0J M,[5LGU/KS_'Y:XA$)42YFP(\1Z=H>O$^NO[^FN MO1SMY9Q4PR54O*N2ZS=N[CJ-6OO*PT>5>?X:7+RW>-;B7I&/MV\5]T(G[P,W M (HQ0]S+Y92F,J1,(S9O[DK:-^VF$+7+IUV^ QVDK*7M;?4C#B5MU6LE9XC: M"=1.X#'2$=*D9F.^"FH7+V2GC)4SDCS';:NTKTR%/F)"EJ@'G"\7V42%?J]F[M6QQST MJQ+$NX8@%A84JT[I\L=44AOQR.?2Y[W:[0HV.;M]?F+C.2J6BACNC$6.%! . M'WR\]')['C,DS&9W3_:\#IA=<<#LL/;\>@[8ULS'M(EZM]9_\3CY\XZ8G9,T M/I*9OS6M+;/^RQMX%*S_01VM_]9>K'\M?J] _%;.\D@+;5_F'0P:Y!UT.U5) M8[N&"+Y2DM0]Y!!1_'-4,M4V^7,82TS^159JWMSUZXM]^71(28>4SL"FSY'X MEC;]H 6$WZ^U%DE?1^XK2HZG->F7D]I+3/KVS5VG5M1%=8''-:T@R6 MVKGFFKGZGLO-_W$FN$AZN*I9S$_<5A5_YTE[\ H18;_%:#9%4H%GD8W"D8/- M8-?V?2W73\?L^CKHKNKZ>AD3)[]DN8D]UM4* MDM4+S\..0%' ,G!8A!-%,IVS,/2!&? ?MA. 9O*#^1&? M# 1>F (T3L4(52??[&@3=E8@662C6^?'[=BQ@:[?( /U;NZB<2"3?G!JM(:" M@X,3FEV72EM8'HAU[9/WYQ[M+!/Z:DNW*!066B@G4U+>XYB2LGV"1-QRK$BS M7NXAOFS6T0/A-YMW4S9"9## >6J+AD4Z0T1M4-%*,J\%!SQ2/O4/I[FP_A!(,.IS\TY\W5M T$BF.XB(YK8XS$^ZXH+8![#6_@ 61J'X.VSV M 0S]QUSLLX Y'(&\"G-%E,&.\*+T[*6@0!8W<9ST-!LI0(-+K'@2\]C5(BIS M]F-UP=1: B83I[0#!9K(L$,F&B6@%,W8)4"+QDZ00"KR ;YHV*3371+"*]R< MH[":\0'HN<@Z6XS6O;Z)N$T]$;<":SGV1-Q6Z43<]K;3)D[DSLWY9"8-#8P] M)5^0^0V!^IFF_@U1I&+Y;4 37\">QRE0.*X-_CJ*P9I+/1O?XH& ELP[-NBI MH/-"2E6@?29P\F4 OD4HAH[K1"#A<-2EFD2H!E-%@>^:?/^(C#DU()!G@8M' ML*Y)8.UO[LB"7,^<7/)Q[SU[[@HYO:LGD@#[MA>(!2_BU6E)7^ID>5Z%$EZP94=+NU;K-WJE$ERUZUOS?1HEIZ ,>* 1QH MBU[K[(2%$1/4H,QXA],4/N"05!ZD0*,X0*63&M-C%:H\5N$:DMET=_R=\MB: M]@5VBZ6Z9KVWIQ:? MZY%]4N&RI&E/8T&BZ,R02\D,69:7-\>S^SMZVIQEY_*ER$) P'M Y4M,I^? M!_OM8IN:5JU;J8R0"R\!U:VJU^B_[JGT7['O;ZF&Z]W2+^M;,6]H9+#HNK.H-;LZDJF(_G$M[<5=H1=W*BU7Y,F=M%P#>\\W>[7^8O!%NW*'HC+5 M-O:*G+DS4G0I3=%A/FEK M4"MIDJ7=N>.G6TOL(<_8J<\Q7HA9;.![XJL_Q.MH#O$(/L'>6YW@-[ /? M[M2:'>W\'8W \MEIQ^[GJG(NYUNZ7FFWUZ6Z=*O"M%W#-INT@2W1L)V;NUYK ML;F:[C2H7;G]**V7567N@?BWZQ8%+-&ER>FU;J4.ZHK]2#]AI4>#_] M[??3J%=X/P.*'I6HW747TI3QN;I8L/;2&K?%[B)P%9.=R?!KDID(?VDL[P=3 M<2G2O" ITJPNE3;Q,*^SJ 9WID&LKL-"MHV*R!$&E?D!!I5YA(VSLPW' M_50XT[T)SGBO+-']A$)D17/0S85*>3N/I!=#68N&YJE$4>X(:J'=3E6$TRIX M-E\BNTYV/+H!;^S@Y#I&?O/(;:3+G8?"G.H MLO+=;?%,U@NE:IF;M8_"/H+X@TT=2#'CB-I:A1'\1S69'1G^5'*+L]7RZ^UZ5R_J^(OJ'*SUT.!,6^X\8-]FXS>.EK[':"FU MURDD<[RT<\RYPN83!I*W (WN/I2'WJ890)LW$[IX>&W2*^CZH**IZ"54I(12 ML@YU!4+B&,AQT^M$S57-?%AIBZ@J%2TGV M7(Q/KDD(4+$B:9>'DMYS(&3KEGZM)NA.$]S6BA06Z$&-FDE6,,F:+)-#,0G. M[C '[1?G+6LFT4QR>"99D[IT*";!,;SFH-O33**9I/I,LB9UZE!,TD$F:79T M'>?QZ.*K#*4(+!Z?:8-GY?I3/ ->?.WNLR<0[%'MTD3W:[:JT M_MA#?::FJAQ5K@\%%D-B*QZK1?W>=3MKS8FC&^ !9X4/Q'!=XFS4W>R#C?U"\^=-=;D!A^( M-=KUF[N6V6TO5O>>;81!4U5&5:TU&=J'HJH&4A70M*:JBZ2JTYRKM;&+9<.L M-ZLR>4>3U7[)ZC0G4>W6S5W?[/2K0E77$#_\F_1D(%PR#X4]<3PGC (:=:\C MB"L8Y#2G4.WVS=W ;'1>K,VU4UY)JCK-L4T;F_F9W5Y5&I=IJMHO59WFM*/= MO;EKMLQ.22,@35:70%:G.>YH]S =WAP,JA*8WE,$D2FD7G%K\<&/P%9<5K!J M&IZD#%\Q@0U'H6&)*14L_PMNW&&T\,;M@E<4=UQHYLI>0',YTNA$*JY/LJC5 MVE=6V#ZP6M%L,LW+FIB9=/Z^#H5.QW MN[H=Z/D,66?'U9&*M+56/D+Q+$*@< //P"8._#4.J'776,+_L9\.'I'MVH9\ M1?//<^IJ]ID[ED6; 5>U*^.>8F+H/TF3+J!<$-[,"-*N<&O?%<+-KE"]_H3K MJ@: _LCX:;NH95&*=7:58DI0=7."JGESUZHMGLP!/;DNK@O)9\O%]@^VV-;- M7;.V&+9(%[M _)O0?-)5L64"MD*V0K M6A@[<9J%;A13^ETT# U)P_)R7NZFO\BN/NK@<677V%4;#M[MK-*NVNO]K1,G?PM-JM*FT0 MCZ)6&.1Y5]CG+ORF@>ZPR5XQ ^#]MR]?C&D<6&-8IT'!J7#>+WL>.]@Y()"% M\<]#F??,P6L/#)8ETKX5/ W5F%(;=Q(#*YO(-]OMH\&26\M_\ -U">]K% *. M("VM-^#:SJ0(,GAWZ^@,M^=C- ;>!2!;O;]ZM_K[:^#^NKOM#_W.JN^O>7-7 MK[66[8\\Q=4T>CQ^WWF/+=SC4AI=874N#M_)V:'*)FAC>'GJA[2<-R1>X%59 MD_Z?BW,85.R\GCTBAJ'OQM'R1Q8:W]Q9&O0$\+NVLU&KVU;_8%H]?M]J]5KBGK;[M;_#TR9!XH? M@Z9YBVSK1>%__"+NRM!8/LQIT*W?ME4/<97F:KR+X'_&(C)#H-< MLIGJV>O4VPC&)0-9NNU+&LBB_)U_#PV:HP1B,X7JE.% AT BCL9^0-;/<$:. MTM '"8\D:#M@&D5^ #>%:KY+^&;CB4'G,F"EWZDU<JSOI8O:@-6VM7*UNA MO%?TO>?YL6?1/!_C'9C[^YLB<%Y-L^\S9GR'[!$8_Q!N7 3'NAS\RC2!/P^0 M8Y]RY6M>89OR#W(8Q#B>J]'$ %ZCO\FD"MUX<^?*[ M*D6JVN^5QI#"(WM!$ MO@7#*Q-O]U0TTRB+"'4[-W>DRG5A_-'P_AG,/#4/:G.:BG=="Q2> W,3-Z M=(I0Y:"1W=@FL3\S2U^CD@\RQ)4-LC\S3VQ#Q: M_6QOP0V(@S89I*W5SZX)<(SY\S[<)L-:+M/6YE>$!K\G<@*XA-4$@;1<$8;. MR,$+A7Q1_!G8,@SC['& @.5/)K['974UX[.G7D?)?0IHP<)WS<)CAH,],.S8 MXJQ4A!'QJ2'_C$%#(=+@+<"FJ)_@G>KC0XF;3%8_B=W(F;I.EMDZ%8'QA EU M-0,S9.4/ $*8O#H:BXB_RX]3+9 3A=E3^.O("<((FW)P"3M!A)=*4@J1G-HY M\*1C RB]7?92T\-NY:DRMD+C9JR6AS MJ1)B@MNR ]R<+K+O/?LK$QLOG^MEOJE7+[:'ZG5N[KK]Q5[0L'P_#G$W"0][ M6R]]3<.K[9:^9=NK7I=U:6O]SI#\L==R7E; UPPQG0;^#_A )-U9-5NP;%6D MN:9^>#-T4.YPJ?'2N[D;K&J#4([\46'BZM:" T5Y)FW!<= MJ*+4,>=H=:N=KJG<+3=VOR9:(;-ZLWM6>>#4);:SJG,2*QQ4@T_"<:G: [EQ MT1K)6T'11L4IEZ&7P%)S0NP*]L-(Y54>+JJ'/-E05([C3) N B>S@-C!L6]&33C; VAV"_FPJDORS[6E+Y.!\9*'G7.VGE?VIP+'NC*DTD MNPU*Y.HW&Y4>';F4@)#]Z?/#>S#6:[SYZO^Y62%=(EP^>J!UY8/X\QCS?U7[IW< M?"B6]#D,/90K("^?G! !@^SO8(&-,TE[%F!O1PF7)B2FV0N$74G8-@J:Q* 2 MGH>.E1R-6(W1FP.X =25C4!"IQE>;P/NP4$"5PA$ #AM#K@MWLQDYTD$*.MR MW?1X$37CO;#&!GAN 2RD:&S'4QL^$M(:\FO">U:M"42-PWZ8/$'G% 1L@A0 M2!M5J[.3$(SN"+&J(T1[#CJZ(\2E=X2X!H.(6C@%-MD Y:;1MAW<.JL=[=06 M5LU*_\HRJ\R+[C=N[KJUDJ#=SJV2EY1=[K(VS%*I=9:O+5%/>VB+S"XK:G<\ MYO#*E&'67VL1#ASK7XFFA:#E^^03*4B^PF?>,H_ 2CZ#<4>LDD5;@5,RZ+1P M\'=)^./GU0'6\J5V#[K4-K:)6R2RG^=#4\@TP" @V[EE^5(_8DNLHXDA E;6 M6ST*=()ACP5SAGNI_U!D0M:55UAYT2BDBCS>R?\&^)K"^C?#L@#W5K94<6NPLV=<$LK=9'/;\K*]2.R/= MA'G#)LS54'6-@^H/K'?MUOK[476]@RX5CV,Z)6SW,EVGV6!G-IC7_1J4.X)R M/[;0M=LOQ\+HFE/>E2W'"U;IMB;,FD/@WW,? N&JC(2PU$K $][V"A/&Q,5Q M)/4(2WP8B^@//W;MCQ193!6%4A%E.QC4;^YZ)7HKVX SRC5X!@;#]QLC\>0' M8@@,H8*8Q://186='.J7GV\>$MM+$NUWP/:@0?[LJF;BNV%[MR7N@NWFZEC* M_K#]CB4O'D3X<5AV1H']"H-(@+QT5/3?QF%J812HLR3*G7S$HR4,C(/%@?XH MGSJH)XN'%DQ$D3/!MZ=YDA185HX.7 &!OIRTG#!;5/!TCYTORL5B:F#@GR?FM%D&9K5[:GCI?64A@6+[T7*P_ MB:J'F#$!NA ,-#H=P?M'#LCAQWD%\J)\@E;5\PD:%YI/\$T^(@U]E5,_0&=I M95K!H%5RTC]H+:85J+<2^_U-8B;1% 2:<0_&D/'1X\1$!R=%[9)Q0!\\6X/E M=\H?O__VUFCVZP3'.$H.GR48WG3*FZ92.1D)HG26F%=.@H]5!1ZZJUQU:^S( M46XAJ&')8\6\!TS]1E.#SZ'.R&07Q<'$6@!=/GOW #J67ZO]Z3@JT M;^Y\=/#F]7^8X_HQ9JEYF 5\H&TPG>"IW,[[Z"S91Y"^.ME2 4O_]I<^Z+%? MP[7$H70YW?7^A[1B,DD^CT:.A1DXSV-?I;\LO@)]-R(7S-K,J(4C[(K"PAR) M89P3 4D5243*0Q$Z(9>E*#-F?OF@U8$=IL /?AKL4>XD+^(65D>!>K!GU*_ M?DDA@[)@?@=\HB^->0SS)L%VFL@:2SMV):+V28*&"3\$_N3]CT@&8/.\!3D. M?G 0WGOVWWWO\>_H)]\#?*+PK[-,Q0@7=4RXK+?\H'LIO>45C%!./68*%O C MS&*!BZ4 !X;?$.USS#RS[8 2:YQ"3_E+:RG?!I^ZT]Y?(_AMN] ?I3N]7M2F MB^KLHX]_:2>"P9GVN7^@X^'?V.U\3Y,NA\$O=X6:\Y?. #A7V'S"Y/TM0/,2 M^KF\=OZ;-BIXZ92$"X+7)JV&K@\JFHI>0D5**,TEVK;8A#LLA1UKO,G%?N<: M#9)7Y%-RK?'<&!@-A6L9AE,(*+QHRLN%=1VZ\$$VG<[JY@)9]FGYG>O:39ID5+-.M ,OT M@64Z9JNWF*&O6:8R9*59)F&9-2UVCL(R \Q9;YK=1EOSC.:9ZO-,_^0\ ZO& MNMFNV6I7Q32[AE:T'S@O>:DGKKN8-SN#"C '5K>VS6YS,:OT-(W.=:?\O=)8 MMUX!&FO>W'6Z8+-H&KM,&EO3-O,H--:B7G=FK]O51':11-:L )%AS_!NR^RT M]5B08P\U"%1FW[:VNAY"<%C07(Z(.?TA0J/>P=KHEMGO[BLD>JJA!$<("VG. MUIR]2\.ETW VMDAO-\S!X,7VJ>9LS=F:LS<:V' 4SN[=W+7;?;/5W]>D,\W9 MFK.OGK-/?]C:J/>!L^L#L]_?U\%1A4:$G6GQ&A;PW;K4Z490"9^I:G6Q@M'A M.4Q? JQ*Q%I>['?]9^Q0>QN39C7@I;2,U7 E#7&X-0A^^&P<2GZQ65H?AU6, M%USWUFO4!JWRGRZGFJMUL&JNQ=O.(VVX6)N$U4H;UD]<)#22%D%&JY$"XWJ+ M(W0Q@4ZCUVGT5Y&LU6VMMKD_^9X5!P'P*W=/V-Z@'H!!W3.[[<6&=3IYL3(T MH_DAX8?V@?FA40=^:)K=9K,B_' -B8D?/=L1.BUQ!=FO.0A].=EC'\N!V:Z_ M.(==I^I4DH#6G+>]G(":-W<#<]!YL=C463@;4\!7R<&U9S]P[9W$YZ8&T;E3 M_YK(]VON59S[7ZX]N ! MI^[-7:=M#EYN.YZ8:TL2&A8:PNO!P4R%/#BXLWQP\!;#%KKIL 4];?C,IPU7 M=%I&\T*G9;P7@0<2+_PB@V]C438CH]'H+<[(@(N+,S(^R\QP] MB+WR+34LC39-669J\MH4D!..*6>LF#=F7%KBF&Z8KA>E&Z:O2"G2#=.7PT8W M3->MKG7#])-#15.1;IA^G=^Y1H.DD.-L&O*'!?HVY['8(A*ZC_K&P+F&%!"* M#^ TW#>;:(J=SO_U\\=_?D_G[WQ -:@Z#:?1F95$0=3 M_^Z'.QRI84U#UVPVJI*,>(0#;Q4G8DHH,?@6[/@#:Q./DH-P"\GS&Q617& )'D-C2Z?W#P73>P;I MIQA/6C^/*(TG_!Q'820\A!!A8'N1W[JY:W7-7K.Z9O-8XD@$>X[HR3=YVGQ+34'M,E/;]/CZG9J3A]?XM\Z[OA3RE% M7;M(+W"1/GI6(+%SK'#?^I.)[['\OX^BP!G&E&'_X"=U#]+^(F9X\WT0".^1 MG@M+I7_OYJ[9TY/0+I2FUOA%!Z(I;%3=O:"3!DU36SA#!Z*I 5BI/1V_N5": M6N,!'8:F6I@@T+M$MZ?R9B&V[PH<"Z/H(5F(2!^[V8<7V(?IWE(0/?TJB8M[<,NW(*6FN!DO#PC41-3-8EI'P;A%L1$ MHY7W-0)'$U/%B&D?EN 6Q(0CE#M547-7%1E\/YFZ_DQ*90!.X\ :@_%N3%WA MZ4#AH0W!]W_&3C3#T1I?%.#O'P.YPE?J@*]4$4])>]\5M :W)BCL_:8)ZC() M:A\6X=8$U=,2ZF():A]6X=8$U;^Y>_%DH H&!RM?%*OZM>TUT;8X\727[K9G MST.[I> J9"PD&VV=9]2B$QP3%/]^I]=6<_*T)LI#)N[NC2C;=2+*=GO/(Y4U M49XS4>Z6[KL_HFPHHMQ77$H3Y040Y6Y)POLCRB8196=OX?"II MZ[M;FK#:_,M;Z>WDW>J5G7IE5^5:4HF$GB&]>HMGJC;CT$XZOZ]T?9OK>N&K M.AJE ^LY'8A'S[5F52:5[<'XTJ1_Z:3?W1/IMXGT7UR"J$E?D_ZQ2+^Q)]+' M^MO:RZ?[:M+7I'\LTN_MB?2Q-KA6O\3\J,J[*BIR<[ 1>/,_73+3[Q4VER68G[2L/8"[XJVIU0\ZGFT\/Z\@H^[=1O[IJUP=GSZ09SS'>J;M.+ MB1P9OO]AN;$M[0^!/WF;S;)='.7[(!?&]G86YA"?Q=C>+\O;?!F>3X?Z!!*# M9CY) ]!DQ2Z/2?9'J\?Z#J4EXE "20#LC- WGOW8M>&R(>"3M^GGYL;_ZNF_ M9SC35B]JTT7IZ;]Z^J^>_GLPN@[DA8&6^PD -"HK .DT;^[ZG<4CHRKT M)K](3/?JI\)TZ^:N;%:.QO2A,+VFX/!PF&[?W'7ZBVU8-*8/A>GFJ3#=N;D; M--=@^AH*Y[;L//NRW5\ P;9.1;"8>MI8S#S=!Z9>6I5WF9ANGPK3F#2H\7PT M/*_I W,X/&/266-QU(C&]*$PO::YRN$P/< 6O8O9$%<7TMBIQ^G5V\AK.EWL MB6SS_2]&S@]IW_Y+!GX9.7?K-W?_]I=^L]'\57M*1Z."_HF$5[2:/JI%'Z[*;-7V\"2165SS)K.;@YV(IB2*?>O:(& *QQ-'R1Q;RC(Y/&XT.)@9VB[4= M^3]QN0A_1[8&/2'LKMUL]-JVU1^(5K_?MUJ]IJBW[6[]_\!#2QX:ISF%4_$H M;X>!%-]OQ0AV^$:XSV(6(I?F*T@<[S8/]7F +07+:'2P&AQF9Z!&/R 2>0." M0P9X%ZQ)5&8MQCA COW+!O@!\YWJJB/ MD9P8S1H7REW&G[\)3_#8V7\/C7=.:,5AB))9>+9Q[PEW%CHAXNJ#XPG/&WX<@*(5L"I,)(!; +8A_XWL"(&7 M1^FG0]"7/&B$OHUU?:1VL)#/CP"^:=6?=$/Y/):!Y/H_V$- (#'IP5?-U_1P M[L,[?0ZOAI+W%#F1"S_<'!"L-X6J1H3=O0?ZV2U!]W^CZ4 K'CEH)Q@S*0)# M8B&.\4Y:J@:G81J8\UY;QQ1*=7>!.,^;33X"=&T%YL@W@"XB/T +% #*MA;\ M8C+!K.0FL@:%XX4&8KF)NPB>16#?NK[_'5B,KC9^S9,0$KTJ1IU(@>8>8O>; M(I]FXSW^$W_-[$4##,8QSMXV[JT(?VX,6FT3:T[!V$1Z -R)IJ8L9-^!U)D5X(_R%X.59LF8 5$.L MH+5$*('WG<@ \(&5%SJH3>$##M("D(8Q6KZPI.@6=C-+H&L\@V\1&F%LC7'3 M"M087;.<*3P9F@F^%FU_DNW=G\U8E8N(3GG@M/3Y.*Z(4? FD[)6N;!OX_ MR]8<2OE]X=JX#!H1" ,9I5>!0M0/SX[KYB\CB7KRD1P$1>: :L8NTA7\&RQB M!V0 2"E@N@E=!IB"YX5R,X0G1(1D81&JHG(&3X5^/@?\,YDM 4B G$NFN4%D%8NBX3C1#X<<2%R0M^[U/ M)"?'QLCUGUGXPNWX63_5\VQ7 /91! *7CF#C_+Y?-2U5@I8R%00\+ZVQ!\M[ M!&P')-93A85B#W4:2#S+]6/;H'@'HE@CLAJ(1,;+\:JPQ33"OY UA5P-]NYW M29J'S4:-N8I@3@)*_(ECD;#,Y'J&J+Q8?_(Q.$E8!I$*@A]>[X'$5D:SDN7@ M Z@.,9$B#[H^3& #PHLDM$ #8M>%;(\_!&9P2^A!?E/P>L_^CZ M0U@94Q(];<<6YLV35H'5X0Z *-@["X4+L+1FEHM?PI\>I3\%[Y0BY;BRD8O6 MG*;#:M#AG 0!/,@@1%\'?PCA#R 5I(+,JLC(,I2N2P2@?%*,.20: E_&=BXX MJ7B3!7@#+RM@\V#NL],X"&.TL9^S^S2%5(-"T J0HQ&Z6D@(#@[9%1SEFDQE MQ-$(%=!A(:$Q5PW,S3&9XWG^$UKR)+"],3H/A+4YXXY^QV #>ACT#U @@8]2 MGSA46X'5QC,S*PAR=P8,B>%PT#CN L*4S2CD/1:I M\ *3L A&7B#"*(@MBLP5&1*-LQ#L.73?X%$;=+;K3_&E;(H)Z\_8";4C4"5" MF B'(GB9)3WEV9PJF,,F?3AVIAR#)]_.DZXQ%4'D:3NI,HB4]T& =\)O\,:$,.ASB<-%/V*051-#-8D!\/TH I5$)O.GJ(8_,E.$JN01 MT 84$5CP!@'AXWA;($3J4Z?B/ M<"7L4'2%\?"?K)2, &@97A[C$3#"%-51P0@R<_YHPD[YY&H?9X?(T J<(:_@ M"V#"^/C1-"A+OW%OO,KSRVO.B%N+,LY!II?G>9?78?NP?+J9&S$'PI'L+( 6'4 :P@E'@3T":3"A3%/_+ MX.4L4DRN2S-),:4YIH-1E=)H"-==^GJ5,8AIZ,1&P-+.9(KNJ>^MXZ8888OI MXXY7,_[ C"V/5H(FK2V)%@(R>N@CT2)-FAL0Y:H%8 (E#9RQQLA)-F5)6H#" M) Y-P9)Y1H";BI_D[=L.\"">+0)M\<0U?(\\>NK".OMHR*LW]05 M8<=?RY54A'T&Q3*ED<(&X$G\#?LJ64GKS;8(8 M$#C&G)9WY!,V7WU\>&TF7N=,!3!1>,Z_1)JEDU8W MI.]AE83J#/80&!\?YDX=,:],NM/T8".]+9R%(&M5"O$4UF&ISY# !BD?W,HG MWWVB?*#9$/XIHDA82O\I99'? AD!*N#F&IA&9B4F &:?YI@60Q A M_AA08"R,G8@$R,>'32A-T2QJ? _M07"-_MUXCP@$BQW4]4,0D^WX)<$.4V6H M;/@D12Q/EKGP:TIH9, F1C;00)XG/C^\5IM!<-')#),7.FK_DH:+51^ 1RQ1 M#WEGV<9L$0F3#%2T(97U[OAH>L*C3[&+R? 4.2:K^L]8\"*)FHE6T /Q0SJ; M#T!\3[#2B2U")"PZ#@K@/[;#6!%6YB<@LX^8JM*;4]QQ4K:5T'F!BRE)>PG> M"AEY>)9UF\\/\8=TS"&P7P!1-8E<+G%Q@HSU"ARG$/!9$0WE+GC@"LPP:?Q9 M@ND'_UU&*P <4F5NPIHF_H.9DZH- HL\2GLB7@SDF*RPK(\,QWU MC"6G(Q1C,CF9!@MDZ@2EJI3$D$Q2KA M&<@_8R=0+HKQX-MBQNJ@C(55A(*H/PU]S.D[.KW$W_%(D[4>2V+C+=UY/YV& MO.2BT+4E8L/$\DZ67SG)QR]EL27ST@X)E7-70'VA1X[VC#H>80[WO5OP=\%+ M1X&9ZAC"D\]DT0FNH@[C(;K"4Z4A'BAL5+B8D%I1T4XQRF6, M)$5)J!D.$0X=B1H2C#**:"VFB5)D(:O'!27@.TE":?K^I(P;=7E07(Y2P8:* M0("?'D1)#7'A/BRHS(P:]1T[U>""3FHD22@19@=U2<8ZBQ$*[UO^(P@B_$W@ M@0V()E3R^%;\!GZ<]IO_.L=/?*ZQI>S*'Z )',F<2U](2NK(R%V6\QYR93!A MC85?@,D<"_E\;D]& M)A8Y(F))>!#EI<9\.,&0&XD9$&7QA%9AIY%=F0HM80P#7]B93 ,PQ&B@%"L@ ML!1&%=WG^BXPWQ:6@1Z3<*.Q)0(JV%0!.!-U18Q!V#@@^YXDK,G9)\#S.;N6 M(H21LCRI))C+DG%0Z<2G0:5<@9,.*>4V)*TZ=4EHTPNP70(9/('_@PK!@0?S= Q">5(^R;$9NM12S7$Y7@-I.-B3!EFT"Z2442,(/%:@P3/M:20?XU M@"T4VKGWY$0?IM,7BJ&!(PI+#. M+2EL2B24ZP,5DRF0B +%0O@*Y#VN> _HR"H%&GBN03Q-#WO)_Y?JI.>1#!-E M*XNP<%1)5D#2]:+@/LS4YJF+!#9G\*C5";E)*/U0>J5@\;U\!(-$$QV_%(P6 ME _J'0:\+/&N")RIU:7.EY0A47;4\Z$! M)?0WBO*;QO/8P6@T>0.Y@'^)_VE\*_M,KM;4Q48R!2]6A1[2EZESL)=@ >&6;[6L!"8P@^4'1!D_>DL QVBY%?S+EUC%1SN5P,;*YYW#/856[HIY&^=*MT MA(=6XY^Q0Q69G*1# 24T:9;"\E*&4DG$'<"_D0@ 49> MAK R)'EVV2*=$<>M% @Y?%6"HHN),T6SJ3H=/6Q $RFG))"9)5DEXK2\J2AX M2BSXQI)"[1BXLO@UV-T%:(3/^O$7,LB?Q])+CD-1*!+IET5+X1V.:X#H\]01 MT*JP:6%;&!?U[9IQ#RNAU&H,(2U^()#H(B)Q43R3888!(:;5G"K PXZQX"RZ MF82;\$1=K

&EO>Y,$GD86K15O$YPA'<(3A$56-_@\]M.$U+3HP)X3^FG&,*F/,)Y2 M(FT24C;F%0)H8@Y&)-W[5']'X#O@,LO)T@?*/I8)>G-SY0 OLO&0*EDD<^V6 M*MW,5IPKP #?B:98R:U8C^T].I1NDOMH MOBF"R67;TF/ARM WZ7VP&X>W"O08J#@9HA3O4HD=?I!B;*XE(@0^S2514!JP&%SCJA57V(C\.T4Z?H"*2Q9/W7( A.T17 MKRSVS%$QZVDNJV\+\;=TR3E\[%$>MOL5$A/?TE8'OR6M#BY"0GPK:>%P .&@ M3K#2 J:7R8M47#S[@6L_9P?6Q7VLEAG9?T2$CS#VB@'$3 ;B"Q9PGM]4(J55S-$EV06H02?5YI ;22YZ1\Z2#/)1 M"_25G8E*U'/Q.!9S%_%8+4NAXK,[KBM0LJR\Y5A&(90':2%Y81SAF4Q*6DVV M#CRVY!@1OAW?F+6*S*S#I'E^V4Y&PG$1$$-)71BRI7.T-7(F:NH$TCFH-_6O MN=>D0R50]W%_-=6A,FOJ07M+B\XRTDTA1'D=D=($O.(TWX.V1;G9;B[J,%O3W(L]S:VTI_Y ]IQ:RM.>M&R7D.[E.**)Z#NO)1;6LFSCF"&UAD2Q47V@+%R!;;"J5?GH\[J>3IN0-=2G'/=JEJ_+#$*%\N ML;':>MR $*XJ<$7V_T?N=O5*!:]>F_#!RPCRH*W,C2541Z]7,MVCQ_,P2@X( MTEQ%U0 02"K,LOKI& V)[PEL((R8AV.@84X7I#!*FCQ8VA$*/NQ[M^7-HAYI M%!N_) R3A,:%.0_SM^WMT+54*RV=IWS"S%U&YH/X87Q)VK-=!+VJ\O!<%Y>1 MM%%BJ7EF*CJFPY5T!AS>B35?6*V7 M-,(J:X"G8EL+_>]J1C+W.6,2I''.&N:>:8YU(?G MZQZGOD3%9C E>RI,1*74:9N=RT\1R[K*X# <]K.3 M!=!H@#4R/N=>@X>A8L%YND[#/>KE*BRD!K F>\=/!C; <5&";9@-W+^I;#+I M60\O7EM,,?*1F"B>JE1Y1)(8;-90JOR=)8D[N29)Q=1Y[#S "0.JY#*CG-!0 M&3,JH(F7,90AN#0MB4$MG]2X2!-JW4E0!9/K4,N[8AK*-\E??L4&$:Z8O7$\ M@@,]E(S059$8-'1!'E#5A4(9H8I_S@(3M3H')Z( _F\G7U8_U^"G7Q:OM]NU M5J==^E.]UBB]ONQ5C6:MWB]_9-FKEE]OU[MZ4<=?5&?EJWXARF+J @)&3OC/ MF];-7*_.-W4#FTG^4KQML'!;<_H#;_QU(7@X3^Q,Y\>7LG6610%8";]Q]>=[ MK(OZCV'PRUUJK!A@IZ1"(;*O"C:?\'1F"]"\A'ZRVY0H)4D[I:1BQS9PL[^> M%_30N-V 1.Y ML8[\2\6&)B=-3IJ<-#EIMHB2*^?N/H]N.>!(9V!S0V+QR;38W-"\+F\3WU?1L 9^@I M9ST&DDSU-SL%GS8Q3_7SQW_^VHS89?T77F+0GJ$PW3K.L +M%5: 9XB9K;U9 MC1G-,U>.F5/QS)X,P+-1GB6M2:[LY*2Y;8! 1X&K*@,T9C3/7#EF3G7:>&U. MY_)&$-?F=NX8D=4F].$3H31F*HJ9'<^D-&8N%3/[=#M;[>JKSP]WY"R<1 M+_$]+^IHK+.M6MT*"&=@>U\6-G?T9#4V*XG-';U?C5KLYW+M.8C-'0^F3B]B=)[3(C9;.@=18U-CLYK8U#F(I_/_RXX\7@:B4B*M$4I7IS'D5 ME+AMT%U3HJ;$*B;?:$K4E+@O2NQI2MRZT?$O-%5,#XA'XV[Y@/C-IP(.&NE4 M0#U5_G*GRA]SN/3*28]O_F&-S(5,8 YN^:E"K=ZHV6E"O2:])K^DT:UK] M)CW14T_TS,/F+4T(O];=;SO/](I 4T(8>IIKL367GL.II[F^%"H_:1+:'%B; MQ%RO#"1:"FDII*70":60,HKF NPM#D4=EK;6O$!_1W_GO+_S$H>CV3A3Q^N5 MXQG1V(_A'79H&O*'!>ZH,94!KE4\RO#U2_77M8#FPK/]ZJ4')#MTZRO-!*C< M3A=LE*VV6.TDAT:G9?:[.V8Z5* 62%/;65%;NV$.!MOFQFMJT]2V6S]9L]_3 MW7XKBIUMYS]OBIC*L=C>\S6U%#HG*=1N]\W6KL,V*R"&-+6=%;75!V:_?RC9 MJJE-4UNA;*AOM@=Z!DE%L7.H^8J58[%MZA#69UX7LI*;S9*LY*55PD?8<"$Y M&'ADJB$@UHS/(X80]<-,=H-Y[V7+.CG2 MB^@%? 1S$=A3 -$T!JV?C6<1RI!X(7Y$[L18$C0XVCG7'4J.>@;#N!M*(\SRQ@99"_ M'Z1^Y,%]->/CMFQE&AV@#D 0HTP) 'JU6L7BM]N]LF]O5S5T(2J[U:]U%E3V M*2D)$"0KR6O:A+D $Z9 [I4Q87K]W4P8X<4B6&G%-)N;F3'(=9=IQ>0Q?EHL MMYLOL6(Z_!$=/>VHCI'MV(.18>_G"B,6O!*/!A MJ[#V[S(RDAX,I#\1!*,XH"$2\[H3&S3@1"G3>)8T71( F, 4*/T9WIX*1'PP M%:T9JD&\6K!.!Q[9'*8J6'!9"NZ-05G;JB\ZC TG7E6@II*:2E4)6DD*XKU]_1 MWSG,=W1=N:XKUW7E*Y-YDX.2^=2 BZPOI[DY%UHA0'MK]LW^KF,+*U AH(GM MK(BM:_9:AZIZT,2FB:U ;&9]L./4I K0VN66/A%RKJ&XG#:JB\NO6@CUFV:[ MO>.,[PI((4UL9T5L=;/5T<16'81<,K&A>76^33,NW+PZE-U;.0[;L;*\=ZY5 M:O/!M[EJM6:M=*EVT,3?W1C)$E @&]]OQW23G&9T@MI*)Q)+VW4FME+ ML^HQ)&>\2;B&G$Q=?R8!8F-'[3",IU,_B&BG*NL=WH4)\L,X!,B'X>(" W\$ MU_F5JNJ,$NB]4!6EN' %_I%=Q.75LR)4DTH1'.$"_/S1*)01+=2P9?856TX# M:3FT/WJIF, ZG7_Q!?7F>6 "282Q2UGZ7 (#7"H<+]F2".%3H3&4 #PN#< 5 MI%\"B "YJ.](>Z.4_BM@HBV+;>X#0.RRM34WJZ*L9 62+GP]3N'K"V5K*R]G M]B5;6T>2K0N2$R7?:H'+HK]Q&-G:/;ILO;X1O(WE(WCU--W+G:9;Y3K KS*4 M(K#&)!S>@87@^M,)[--XKZ2.+@P\NP(EO2:])KVFXZ_I186!2^WZ#8N?UCY? M^0PTBG#MJ9100Y,LSHV+#S6\B/KV4ZZH@;F,^ XB R^O $+7'.F:(UUS=%1@ MZK.26/7\!<"Q/(]DO$*X9O)T]5%>>D'YW?;->F5Z97MG5K^P@ MWF>NUO-"_/:]U,=J8.X$S NOJ"7[KG#D:&='CKJR]JP3I/OFH'Z^TTTUL9T5 ML?7,7E^7<5<'(9=,; VST3C?*N[,MKK(TH_V=99^:"%T94*HWS([G?,M0-/$ M=F;$5M>V?(40O9GY4H@=ZYC;);7,99PP29UA#Y(:WS @+M\BZL' MN1RQGB_!M'F5Z95=W\ITM96NMCJVMM755@L@R4X;)\EI MHRZT.N=\N5;3[/:[9YLRIXGMG(BMV3/[?9T)7!V$7#*QMN,QE82Z$KDT*#MMELZTJKZB#DDHFM-S![NJRO0@BY9&)KM,VV'F)86>Q< MZ9#H*ZBV*HG!+:O!:=?ZYUEHQ;.S>AO7G% U2/&[42">X*-4 H*A91PZ164@ M-/$++_NPIV#I0*P++^?:@HH:;5W*=3FE7(UZ)A0VX*O"1TM(A4:LJ;T$PH;= MC/WGA)EZ2R?JK>9.?KH[5PPV-\XO'H96X QE-C<4[PK]4?0,T&6PJ)JO]F75 M?/U->C(0#+U[>^)X3A@%-.A.EWZ=;PF*7I->DU[3\=>D2[]TZ5=UH*E+OW3I M5]6(3Y=^Z:(+7?JE2[^J!RQ=^J6ED"[].C4<=>G7L26=+OW2*],KTRN[AI7I MTB]=^E5Q8%Y#Z5?^T%$4#AUU!=A9Y_'US?;@4(-/=-*H)K8"L77,P>!\._1K M8CLG8FN"8-,58!5%3N-01<>58S%= 7;54JA3-UM=/5VR.@BY9&)K=\R&'F5: M(81<,K$AK>D"L(HBIZ'';5UJZ<[R2-RR"IYF20'/V=2!-6JM+>I5O!@@,X&U M1>D=7.84R%$@P['Q& @O"G&!$O#N8.V#G$Q=?R;5C?*'M&*$9KBN[F2NUF1I M35GSL#5E=Y3NN/35BG;:6)XQ]4,'(?N&RG9@CUE5!E9DY)Y2-1WU[!$Q#'TW MCI8_LA#2/X% Z%!/JR(L\G^.TS/SJ7B4MT- Z_=;,8+%OA'NLYB%J!WR> &D MY $XO_>E.QR-#B8!F!)L:?D!LD+8 M7;O9Z+5MJS\0K7Z_;[5Z35%OV]WZ__5N[AZH" G8Y2U\$(@G_(]?Q%T9&K4P M[V3R1%=CGGLU9JZT]BR5V\7-TWOPX4ZU4X",/Y&FX75V77I->DU[3 M\=>DZREU/65UH*GK*74]9=6(3]=3ZDHF74^IZRFK!RQ=3ZFED*ZG/#4<=3VE MKJ<\[YHMO3*],KVR:JY,UU/J>LJ* _,:ZBG7'33J8LHS3(GMF:VN+F^K#CXN MF=;:9KMYJ"D/FM8TK15+*0?M\QWG#CA=M7@]:5VE<;UU+V=JR^.<*V5B7U M+U1)#EY0)6FNJB0)-R\E<3!X*\-(+71^%E:N2*1T.%?V?" B5?3AQ[CM)[A( M([:&PA6>)4L+0&#? #C/L.(@D)XU,QX%7)TKP]RHTN,R:*)?,D$1"YY.3A+] M#!U[)PG#\[W;0"(-8 53[,$+70"M;;A^F-3]9!7%\#]^A#]'Y2_RS]B)9D:( M+\&_P-O\1X_>8)'X!M_\D) 7"ZINCL:AOTFO2: M])J.OR9=4Z1KBJH#35U3I&N*JD9\NJ9(9_/KFB)=4U0]8.F:(BV%=$W1J>&H M:XIT3=%YURWHE>F5Z955ZNMF\D0@0RD":TS%,K9\DJX_I2H:7"I\U'8B M-5W'=D+X=\38$392,=X8'F8.7 5YH%LRJVKC\JG#L4"MFCQPW61[D"U( M.#PY?AS"!R50ZT1$TF8M(H;^D\QO(/D #WC#:LHBNR2_8Y%D?NRJ"$/?^U?+OAI?$@9<)IXS-'/L_;];/41RT;];P9O\(RJ*\ /*_Y8"FJ\9N, L<*+T13&FBY MHW&"U#P! 1\'/$%OE&Y^FMO\%&G7BXC$B50L'[?!EHY'F1A$2MG380072$J; MQC-)*R=2\NP[@'["T#10B)'U ;H+>SQL4"9,FUP;C<4+BJT)AK@A'G<"-\F*\"-]#= M3!"^!QN GQW+D; ;N86B65[SJZ?BSDW%;15AH:?B7L=4W"I7Q7\":?0.J]<# MX_T/6!$9!E]!!EV$U/]#9C(5A:(8.B[V0@"9B\X(2'84A2AMP==U0A*2%FP" MS($@I&X.)"7Q,CZ.S2EL!I9,@170R[$!@RM"L&R>I?N4V*I@? 7&WQ]^,PWP MD9T0#1HG5)K @+_%(;M68@I6&9A<\"HP@&#;( /0>(*/6DJ*)\O"A0-:N7FYARX.53,1O<'T3HR_@EAJ"%'\R-7B*=!'FODTD:8M9\F_RW^?785 :'YH\#KQ_!A:[ M(E2XD:V@,+>6J9B1D8-V>X0[P&G$X/ 33UG2(6-=T=^/R&@T;XD7DF_1RO%7 MRQ_#*G!A&Q>XA, (@IE%O_4QBN5'O_JS M6LFHP!81C&,MB>!6OJZ6BB[_U?/SZ\N[\( MMODC\X3GMF>JGE44@\Y1 MSL<)R CSQK@TBJH8_A/<")*6' YPW#VRH)17/D5E5AIP(/NML)LY<%&4(#0< MUX6K)&K9I9F14*9(01*J&**DII,;?(_EQZ[-;=:>G1 _ A9F^)V#?EG\()'[ M28HJXX6?F%E-5XK7+WB'UXG MG$'M"H':QPXX0&DX>JY7H)E=4(\QU>?:'B:>'+_S5?-U>;S^E8ILOX9[6J_! M9X M8T [\07%! VV?_$%X&;T*640S?CU?\8.Q=[AX?;KA7MS<7ST>3'$^*KS M>ND!+[WR5??U7)_"HL2P?<)S($9@"V0VMPH?E#!4:H(BQ\$Z^8LLH1#")QIA+L0R%[!&-]47TMX&$BTL-1 M+O?E"R96NYZ96 H)MTE^#'9 M$1I#!\20,DW#7;5BZ:TE2E&X6/#Z.%9B$EEPGCE-CN'1 R#!4;^EB\( :?8A MB8=S,U -3T0B0PJZN,*2:3QK%$<@Q'_%AS3U[(]Z/A=-;U,9;VR=++''3<+5 M[G]?WT' MIVU]<%J!M1S]X+3*]OU?I24P-E!F,9L+PD'9]$5[7KC@$N$_E#-8GHB2#TXE M0DJ=!X5FSETUV>@8X=&;\@ZR9!^,G +3YUK/+X;3-G44,"F+C_BX-;V ->%3 MW"$]/3'B,P38KN6X3JI2<^XU:+QY,!63M,L3_Y:EJN+=&"O>^-CQ7)JZM]NU M5J>]ET;.C6:MWJ]:=VF]J*T6M;J]OV[$O4GC&MV(>Y_0W+:Q]*$;)5]PDT-5 MQ;I9[U+=1O(%$-;=3C6EG@>$6V7"=2Y6H'N>ZI6=>2_*EYE-*\NR3QKR>G%K M18ZE5,M*O0IP7T,_RT]IO$9WL3SG9B3MKMEL-,^V&XDFMC,CMD[C4 WL-+%I M8LOOK=$DWNV6";V3:77&C6#-;D]WZ:THMNJ M4XV:8WEE9K.[K;S6R#D:<]HO/" MD7/FP^0N'3LGG+YV92[IMR5]FZ[,$P6*:[4.==JAC>J7AZ@Z6X=W-7:.%7OO MFNV.=DBKBIVZV>D>*BOH.![I+O4BA6X^?=+#)T+ @Q\)M]#%D9IQK*G*N4S# M[E7/;'4'K[7%73G$M,UVLZ\14SW$@.W3K&N6J2!F!F#V'!\QUY#:O:R]_89F MRV8E^Y=6(K'=YJO-6]V!V>WOZ/!MW+#A%,Z&)MV+)]V^V=_Z4$:3;K60>)VD MVZSWS6Y[QRBHIMV*8/$Z:;FWO6(>^(13.L>KFR"&'"Z.G'5---#UI>BJEIQW3+S0]:7K2 M]+1YE>DOU"0^WX/>L?_S9OW@A$'O9J/&]8?=9OETTK\[?\:.[:AZT;=BBG-- MC:_)E/++F-I&@^F6C!@P>=YDX'B6,X6M\\;Q 3<%S3.8R3B'04UCP*K:)^'2 M0 2$&L#BNU13!W!R%\YDJ.2 8(+#3YU>JU8WX/6NXWMFV4*/M9YJCE'.)G+\ MU "Z;2>@HB'C 'W. MTL6K42)J)D/Q]QW0Z%2"? M/[;5N98O!4VUF;A5!Q;>-KMMC^"I=HJQ9HKK9(J.6:^?&5,LR4]9DJQ1*+AO MM Z;FD%O?(-I)8ZU04+*YS1B>;]H]9YS%LJ[.,!=X:F[AT> $SX"E'@$N#PY MY5D:C])#D,!=E4R7^*G1KV=)$B=-)TES')*4!2^=.V12JGN2_8[I#Y[OW=+= M#D ^-";"\=P9F%,N@3KR8?7E[98,^0/_#J^T5S;C5[?1#[8=UHUXR,@!00=(H,82;BA7WUNZF;)6=5A)FLLO$>) M>3W&LQ]\1V18*E=P!]Q@TMW(>!X[UKBB6&AV:_U*8 %3#W,RR9;L%!(FA&4! MC"*\P9+@%%)O\KRP4:4\@"*)#R.*(F>"V$+D^JXK+60.=B2'N%OO$803B*7( M$:Z+26.C$$3H<&:(BB)J4!M4 D]Y;QV4PE2 9:<4 (.WJ@!L5$3<))1- !0S M)&8%.,L*8B!FUQ% HF0/8KHNF'ZP"L/&)$4/*;1(W? *RD2L&3O87:VSL+O: MS8IHYPTU1>6%?KLJ=BP*?1%%@3.,E=Q'Z@6#<>AXZ4 *X16$SH+09Z&3LE69 MLLCI!8#\&J9=$4M@I8;90B N=:;5 MY]J8)3WU0[*;WY#M 6_,DJ-_+C;O4Z&.>O:(&(:^"X2[])&%-+(3!'HZ%.B9 M:^R7^W.<9B].Q:.\'0+HO]^*$2SVC7"?Q2S$J$L^$N%XMWD SN]]Z0Y'HX,1 M#<<^0 +X 4F--\!%,L"[8$VB,FLQQH$<_>?-7]874O5N[AY(< $]OX4/(CW_ MQR_BK@R-9QK^^IBF?^CP%X>_Z#B\FJJATZJ(\9Q:8'Y@3., ;#!4"G"UK#0M MI+ 8_!B*1$E/1*1^8^5>89AW:YU*@9Q.9SD20MK8=@"4LBR>6$ ,1O] 1P;9 MB$X*.<93+(ZBV*6RR-BA?Y*N3W>=2>@03.EFI=!T!9S1J[4J!?)EG+%3,'=C M'5BBW$OT8F7T_8<'&C4M#C4 7I M7K@D)U/7GTEI/#O1>.R[5 %.QW5&//4](['+J456FG-%AX1&[#DJ':N:H&]4 MQ&C*@3NKI \7C5 D.)(PP&_.^S%?E8 M+=LFR=$L#RE5$QG]ZNCI:>!;4MHAAVY3#I _9& Y(?G93.#^-#LHJB94NQ4Y M"%J JA.&,:AXJ:Q^T(,*IM$8 /8X)F/__;[5>54"=)!4_\6A<97 MC%\%W/5G;WYK[V1>ZQ_2&$K7D4^2L"]_."S@2$ BC\W78)A+ DEX+[]A*M/B M#&J^E,LKX#Q%3GA%)GX&-H'O&V$\&CF6HX*"HUB]*W=GTK_) [ 9T;-TGU*J MI%P>.?,]NV9\'*%'C8>%()OAD_2N,,N/A-? [@'*\3!T;$<$%.=ZQK/FV+5Y M*<-_P@9H'>KF!5WP(E(_ 5V7HSY+/';IF-4? H$RN"^ L#\#MB<)YQ(M!CG. M3?IUY73@CQUB1?X6?$82/4))%FB.6$E:3Q( MJF2S 7NX?FP;4U=$<-\DK!G B6.!W<5^P*_S2TI-E-S2J+5=/B5!K&[[AV1L M_ 1$V$V?2)D5MCG$KS@VW4:-112S-9J*T2Y P)>3RA=E/1MO02DZT7Y%>Y7[ M0-+8OV@L&-M)(I.-P0EG"%0AAOY3ULKM64,K-8&=$J=^1;X.7_< M0<:-PB,R1;8A6,^__:7?;-9__8)AEX\?3>,CP,;HU8S?A"<>Z65X1Z/W:VB\ M$^XL= BF'](>@&]]CS.NZ1[8>^Q&=,OG5'G1)QN_XD5<_+WG MQ02F>4C\=ZKE1O!EN&4F1:",KG?24MW2&DFV]_FS8[F]]8V^"&PD.QOXQ(K\("1RD\,@Q@Z9':2D1K]F?,Y=[.5.)H3G@2-EH7X8 MBVC9*W/?%5D! I#O3TWL+)DJ&Y5XMW;]@NL75/I7XH=$-*E43#"GC[(!LZ_F MW@7?^*E1:W).G^_5C#4B4$SAZS\BV?:N*TGX;"27X^& MFO&-,9?8MMDMROZ-@*P(&/A?RFT#VYJ^[\E'/W+X^#P 6A,J6QT-"9;18!=X MR@!/$N(#FWPZTNY?8UACHSZ\;?23F/+['RP[\;@-KS4&K;9I9"U?87'H%1)9 M"LRSN\68!7R>?W4)I>!TL_1<]L'.;4/!9OZ;)5;#9DVD&_5Z=;M(?Y68R ?[ MHQQ3A-27P&=FN1SSX9N4QB5Q!G26TCY80#;X'D# M%,7V[!CL_-PVT*F$:_";#"+A>,HO2/9&?M[$]YPH582)!9=^,0&."W0#[P$2 M 60$#&W7F3@1J&0)MS+,@1C1_TSJIV@BPQ 5,AW<&2.I:GGM)W0C]AE*/\;1 MW[;9CHHPWL9!(#UK=GC&//GY)P;>@RP,-L>=N9$'OTC*NB*2>U;S7C M'4[<"+@^$+W;W[^:QM_^^@6\F4]?EYY#'PO<;^_?5?(8W&09Q;APDAJ 18E% M-T2 $"('%#,3'^1J")AT1F#F>]%2<4]G)F0&XRW^(@' A6<,5R%9!<**0HZQ MD3A49Y4LK\H>+E!%D?YR-0[X&- T98'DQ9PJ2C5S)SF%ZOB%SP%'@YSWZ+TB M#&5$89]<$>G:6-8S'R"!]P,O%L4CV+&T'V4)/"B(X_D*M!Q=HZ^VLJUZH!)SQ2 MSO'O>?%KH[DZZ?KD(*X"OW:RY# 3V:)A-NMGP<(GM7'H3*?*( )3!#D3C0I4 MM>3U1&@X/,[PC,EUI,T&D1R-)!_$8#N+R03\)C0O&O6?T2.2Z(HJLR-GT"$DM\R!GBI];/M.R2G+EDW]%B'X#6\NA K/9 MY01"JIKRVEFG7H_8-&15[^AP[ ?1+9#)A(,7/I R_6M)3N,J@[MF?)YS(7)Q M)CI7R+F8A7A1/J#$KD0QL:4L[7+IW-60U['Y_10=2^J0)KXG9\G"*5?2Y RT M6^XBR0[P Q[$QP&G^3SZ(*8\RD83C^2Z9.\V*?4&4[9!_DP%2!V\$DQ]\J&& M/N9B4H\<='!ND6[1;\IM!4=Y,G!FAD_.O_/$OB-"AT>%\*?3XE':#XWV! #+ MX"GM%Y2-N"74)Y7F*I:5IB[ETXC(H[1]DJW\,3X@4J?A6'$QE1A!H.CK- XP MQJ@PL 38E638H!!;R=.MZI"TE'1-U=!J(H :6)@+HCY_$G%V[$C1\;['\"L)*D_ M8WF!Y! N_Y8E<*K?3$,R7*6=,]2QM9@,4P5D9\"V\L">IL!>9S.@@B.+0^6A MKG^CF:2/4F;#B!+20%)AYE5H-%KBMM%Y)5_30XV.K?Y5GHME&A,)."A^B3-M MJ<0L MC\4.U5M T3JX(52Q\7#BI)GV"SEL-%$;L]#0I:)E@S$!?^6YWRH-T5:OQQ]R M">V4, $=5[HP?[>>,M39(2\( MSVKI[$QE.RY[J$I@%Y853V(.?9.-"G")/35&/>O9B%]+ 97GV2SI$+^3F6?'(]#)>"V? M[DW4].@!X2B@(+"6\:+*2\(CAS%\E8YS4Q01-TVYU D=$"^93&KXW!E)A+[' M38M#6$52BB,YU"IK#=$I)BD!%4N-J6ZC%#)V\R\_\B' M:VYB/1CHWN4 SDESL)&+,",>U+DC_.$5O!QV+Q4HK#PH,BD4)* 0Q^+8!+= M ;=[JC8F-4MRO)+*'Q#'!:UM%[0V_*LL99LS[RTZ)[3SA;FLQN#CL$A^.:74 M\B+Y,3I23?P<-W'84#AA9FV0H_,9**/O*$ C?_$!?IYD46.T:MW<)9J&I*X=G[C+E/->/SPW^]_VI\_/3A\]?? M[A\^?OZT5;Y09A MX'(H*4CI>$^^^\0ZW"503#-0H(HLIJ!9KG F&&YVJ"AMTT32-5'-I/8U5 =Z MF X74=4W>")Y0Y2-=4P&4EYY?E?X/+A-;"3D8IM@_:KN!WB7[SWZ7%,^MUGT MS0#;CAUSXQKP_\1W3('S'R4NL&;\E_\,YF]@&IB,Q!7HZ!(Z'BZ?\K=B;XI9 MH%:4CF7!FN$,?/F,+BS7H6Q4/C0($1OIK 0T3+B?0WZ+_YZ&+;#"CB*ZM*4D MFS57 <('#/%$=8I1QI1/08XGHHHL]1#CU4% 1DX>GMP.@B!:6#B\*T"+,9,7,7N.#H)K8%\C1RG1%N/?RYVW*12JT#5+R,\23&7C0L"4VOZ J/8!%S?A? M/\835V0%"YAZ%*-LP7)!)XDP<1H\M1G.2X1 7"@61 M!$4W:3:01:%X0YO7,2:'60GS@\!&Z364F*>!;4)HBD@:@T+AH X12Z#'AX:) MFBA)T3"7I'*0&,/8911F76OR/AN"BE-)6@"6F0 MMD#-2;H8PVR^1V$=;+LBMP(R_$9D16&Y12C3,+TAJNI@PO!"03345TL',^_?@ MLWYP">[,)1KKS@85V?4D#F *2 M;AO]D^&(#CR[OYXNCVPN=M]F>D5.H3, :G\B)^KTCYD%XY'*@$>2&8*ADC73 MH]1N6%A:.O>KQMRQ,0<04NT%E5!-RQA5WYF<-,1<945)&P2*TJ XY84LAWKCU*BFWPVUWX M*M@9T]13=E0P*1_KS:*[=*(R\=/X;_I!339')YL\)1"^;1[OD!!/)*VQ!VM\ M=)+D3,:7ZCZI'8'3H2_+M 4&GOKH7--)1>I6YP: &A\?S*1R9I:D#H.70*'V M5(5F$B)IV$^<_R0]6W/GL=&[HO^4R=&MI"-7>NB4E$^IHF4NFB*)S1&79ZR> MPF,@S;55"*VL:9>D$7,JQ%#[-YZ%3.6+*BMXE0QE7M,H.RK*!#:$XE-M&5C2 M>.C'V57QW$T]P1'A?(DDK4 MN#TJ;I/C5>51E+KYVNH[%A?Q)Q=<:+DR::RJ[I7"N ME[%R-(:'N67WW%#?WEQ0VZ3.$BRQ2TV-IG]",9K\*3O1:C'R#0 M8C?7.W7J@Z3##';/ID3GW,D!5@.A*7\?-J:MMY(NN5S 0^G MX5/?AD1CJH[+&FO'Q9J#YVI/%$!$>X0' 11B&Y;OC0*?Y_04,D],59V0M;X0 M27U;[NR J@9FBYF6&L]'Q3/"/H<>C%8]/X MW^FA08RV#K=QSP5?=^FLC0U. WDL:/ZFN$,8;"9G(!PF[0VF/>74P,J M0^AEE )^B -,,#*S!L;30$8B;;F@"AD22B].(7+%TB1':A>64@1Z4EC>Z,=A80V!2KC*&GQC]8!O.RJ^[&'S"@R6%*ND"!)^ M4 $UCF#CQ"&L42=3_U45-O*)\$U]EALB@..%I^^#.IZ+ZRQJN[$T8Q/Y,5D MQ>O2#24/P=JH;8&AIO.I!IQH9&63))+V*5S8KRI*R=G):H8+\ZN4V;Q0!XOM M:6$E2!R)J\?$E79VX8O[+T@V>8,^-]#)]T\'$IN%D4/PI+;[7"=MBY<%&[700)ADQ17)UMS:W;65;_A563]^Y216DMFSGU9ZY56K'2;N[T_:-G>N: MCR !2FB! ,0DMF_?O;[[', 4G+BA\+P5LVT0Y%XG,<^^['V6CQ'0A(AX'JF M4D%A6&*^5@ 8+)!2%!9:4CL8FDKA1;C PK(JFTOFN? 9-?JAN'MDZ,-?R'C3 M^N!-NO-&R*PO+4X8IR/[;(@+B:Z?%4?!.(F C3Z2(KOMZP+/\#4M9ER>4"AE M5B_AYCB, ^3UG3!_Z&6@YP;+OF3R:]SW^;HJG&M.8NFLMXH2'=I3R[NQ#T(Y MF=@/S;ZY+-BLKI8E-S_1_MN@!?%--U&L[]IV@[A&%EP6WQ@2=X-029,79R#= M*9%GB#G7N+,#67F:(N^*/O6DM,H-EMBSW>BAR$8%]1XVN*=N&M)70^408@EN M&QH4K0Q==$B?)B8VDPD@+IB$7X<6J;0HJTZ&4_M-U3#:RWZ!:K1SO4-KI-)\^ULWY-%&_P'G!MD=:#FU&N\&&=W]^WRPTLD9*$;=;# M1EBI _,Y71[V7\'?:LK-3=M=\63H3WOX.SKF=3O 6H.%BC1#E/4"/Z)#OXRH MQ>'!+[I\1?'XIE6N:KMO#<\\H/,2AOLP#-V;R>/ +1?9%+>?<7IV10:D[=*S M3#P=(@OGJZ%S$UVLS]@:;U"+VJT]&(2UQ MEX5& ZJ&P;Y<7''.DYI[?L:3?1#]G<5V7G8G_)TCB<>GG5CT1$ZT8\>G&4RU M T+''#-]25D+-9(T/L!YOBGG48#CVH0HQ8F1U)&WY5/UI1.N *+4KA,6";'% MQYGXV#-1@QO-L3?RV6LB>J_32FT^+PW!(F(A# ]F78QPK42V#R=S/EB*PZ.-$ M?MR)U/.K"VEQPDR))IH'/SC\U)Z9/(*B/OHHW9!%7K?7<7J64A+54 R-4AM,8H8"[SIL&KI[9 MEUD D>IK?9EW2(X>RM3V.VX78KU4O"-OUHN\J?XMV]** V_!J]E4IO?>5R@.5$MER]4[.6B,7CTFM<*\0:>5\J[1,-5_[#6#C8E1LWK'*BS)64U>3W@@A)!VK3Y56C M+:@#F[.FK E+T^ #%D;1\DQ.@CV6/,>/+&#/R M(<:YX;!++%L!:U]6A=:=HZW. A$#/3&)N$PUWX1!H7)45--6 8L;?N2PFNHM M034B;,>DWHVNZ;%2UNGL<, ].H)>.<+GIY!%NQ1AGWS-UM#JR%K.%$U8B]>" MMGN\BI=I$]XTK&L$O;E1K:%# MDXS(50;C':@M9\#!\4 8$Q#,//FLU$.":E MPIP,.\)".,8>@FA@@A# )V(!03ZFPH^Y\HOG$YUF%:6EQY28#+X+8B-PJR[( M6(7/ZU83F0Q)34Y]TN,C3 RA4LJ"SC-^0\8:U28OSX-).,RV(YFO6+<>L5^_ M:K7><#*>D2/1T.=7NSR+?F2SX:!6275"(JUA##3]27ZB*%""XH5FEK!1+8!.E@FV M^PT2!<48][8I9UL(Z%A]%XGV&0(9KDF!4=.Z[IBPQMDBQ#J)E(@5E6@#RNAO" RZZUMB2R^:ZZMI&FR;9LY&1H+:+ M>/?(J7GWF,XCUXEB-&T;N6OHFNW1DBZU$V MK%L24N]N3&:YEM#^.H/^RC[JL0^%GFB(QHZ5Z,,-\]2Q@Q^ M?7Y-;L]A=2RKC:W*!GU727<<2O1 [361?BWV_6)"W ]4R-/ZK(W5+=K] MU1J=S^>]ZJ7M%2\JS"74B=$/ M*RHW24R #=FHX(TT"$-',3$M&4K!HT&YY@81J6=-K:-03:)CXJY+,Q,&<6UA MDIXYOQ@S7:-A59K=T.6I9HE:#0VIMFS$S*W"]0=CYL(\WY3SOI(V.&&5J U>*N/BB!XHW2F. M.\1((A$0EH#E<@+!N4@EQ5WZ==34'T9:F\EITZX'QX"A52&L&AV,C=,#5E,: MH51+O>9*^TY'?LXZX)LM9TIH]_A UK#?C?1H48I6(G"94+H0A,-EAX0;$Q>A MYGB97T)./'ARR6CQC/[S#.+.=HWJY&2*BQF3D, :U%[*Z(-^H$XV="4D\)9E MHIM_"6L,L7[X.(NV*&>?L7'K9Q"S#KV4T>%%5OWG8'%@M-N5-#*V9/5+Q+^4 M94=V$^84/R/6!AY0&10VJ?CZ( M<&>PG"_\2KJ0$\9Q6XX'<2*\2$R";&LQ7SP&ZAVVH0 UFN\LY6>:FM20)#;N M-"9G0",.DQ8^(>ZD:.*\&T!D.'2"4_$M%_>R-:YDR6\:^;B7W[1'AMVKC2\2 MO1,F"F:[;PD3I*WL7;EJ-R7N*5@S".7?T#XY(5.@3CO\^@X[@CB@^%Z\"ZB2 M=(M@2S SF_RJ;,QQ&A>!-U0$WI1K;O-NFXKXET)T,&G1W?S'QCV+(IRZO$8_ MVO;%\]=)$[_U_\OJP4+OD]FE!BYX:^)2 N.,*<="2Z-+&6$:<"%N&@&^PK1$ M."\M+C=X#[@#I8,7*"U!)=Z+(8<3?%/RRF6*:G/[I=V M[XRI8'AESL:8Z!\,W/9T9FQK\Y*/.I?D8-M+C?"R7'#5.=6=&#TU1@10%$GN M0LE=E;''$"9QO"GAU)!51RNYL[^(7ZP)+7HQ_7E&L1!=?98C&*/?1&L^O\ZK M6KQM&T*^2V8WX#_P1>)[>0#"A*%AJ^W<=O,[6_=O>M90ZO!K'#W<0'GA@@JV M$W5[@]0HAO>LVVH3R2KIL8;O5TV68O2X](X.4G>5Q="-,D4^=4P&BOU,F4-FG.+29 .#;H[%8'6V!HO'/*[1QW)[-=ZJ9 M@(W^[GB&...AI(V9N9#!U, D((T:)1')@8/G(>9-6V',4:29I=NT!"/;Q.52 M76HT;6/&C^#LIT'C1>ZX11,>YFA"W(D8DRC^TC4:CJFJ2R$1 MVH4]2A9JP_WN Y]L+S%F7D)X78:2M:6N%G&A)*G!\%_3DK7KT>(S 8$"QS)U M*%.?'73"@I!:2JT;K- GF,B3#-M> (X%8Y)X5H M2X_D*A2=C;0UGS)R.Z()"D9"\*67MQ:FB8>C0A(^F%96,'SQS\/0.;*]Z+5U M(=>6*:>R7I2NYDE'RCB$VNJS9=@C,FY2?IAPI,1!F/<'9/M0#Z'L_!@JF$_;H&1R^1:C$&C)IS; M(7>T%-5FA VG:R".L\.ZR1Q?N'K+O)>]U(PD%X5MG9$I.[&=%+(04'X2KGDG MI#UF]F%>JWHK4M-%B<^Y"H75WY7BO>.N+(MT[%W^STV<-J[2 M6P:! H>++:\Q+M# '5:C@*\N(/8)%>SY4%R4*B)%"2.F MMX?_B=H1_4A)"%J4Z4OLL#B3C0OS?'$%$P6>VXELN"7]WY./UM'P.A[G9+;& M&V^S7:M+P&F72YQ=\UQUT:U$!+8 MFP*6'-;1]L(G#.[0,$I^Z37UO7CJ1Q@Y\E4DX-!AOBSSFC=MZ]"18E['_'*G MLV?ZRQL(O-EU-(L>O$:?M5.R=LK9858![*KREE?-DIE,T-]19G1-87H-&=QT MN"LE2T1'1$_T I@8TB4!;^<*.5$FC(Z*R,+:OE*^=E5Q]+ &>.:'#QX^TBI@ MB__U6++.; 8<]B&&$(=DLW;,%P:I(P.4=P@+3HV7AE1%HHU#APL.$XQFC;8V MA(\_@:&![[_:D%([7IN!!+]F?"_*-H 9X'U6;46-F\3X:L %O/M-V]5%J@ $ MH]W2)E78 Q[I8 HV[PY\"%EN7SM"K&#=SH.\$6=296%']!S]WN=V:R1@-JI8 MFLQ%=ESZL9!NIG"F G8 @J8\T$ZRNXZOA^0(]4CPWT%<%KP_0E\DE.,@;@*] M N%6)"(@PS!E.6GHQ!;LV"1VBR7[3/X$DK63S>8M@^5IL9V^.N450O<-[HRD M8/7G<5C"B>AX@_#$$;KZEH<\G7W/K7SA+=7\\#& 7E1=Y@6S1]!.!_MM?3'4UT=Z%-&Y,G:]_],E6X*= MT[40KR^=9:D#J6\0,%7(Z5,6@;ML5%X\#+?@)X\O(Q9%V563=H"CC"N9\K*@)0)T45J&A'N1?14%S+ ]9>>CA ML3QT#Y[E'I2'[DWX^N+."3B,^N'L0N0$PL?0AIT]GE;MZ3]5KN<=7UXEE[91 MQXC'Z =A+"TTW8BS* CTP"66U.YEJ-+T45*FCSP$=2E]'9YX;#1Q,I:B_* > MP2?/SKVQY#)2H5&+5T3HAH[W""DF7:@.'C>Y1)G.J2PF0]%L]C1O\B+/9J]N MJLV_P6[D3<$>[C]);*CFQ+'\Z+S+Y[-GJTIR ^>HO@9CG=L7_@YS!G%6-GL. M2W/+%Y+/\ 5>H5X[7:7*:<:?PZF:*TF26WQCM'R1KZ2LYYLB>! @3M]<_CR@ M]P11&0PD9ER(J;]NVX+.<2+ZB-'UUIBR(6[X"J7$]"-%2F,&670>,O"+;Y#L MH^TI8MB4$+S$PE_*+,^8M H62MYQY;CGRJ=_0U8M$V@*@PX_)>4-N9I\&).Z M70]>)./W/-*78"M(4,/']RL7^JZI'+PD<-W[9N/2:LWPJ-ZU13B$3R"1C MWWD*J(4A7 @U6]6OI2B?\KB;>"2Q^T<$V10^/9L==="TMJU<_2 MAKBXV49*Q(?5W?!*I('IS::MA>:\@SU":PVS+<'AM%JGTKZM5&PO&'X.X9MR MA^X=H01:K@6%NJD%^ %,B+/>D>"OH34],'&9ABO844PMJA(.,("# +"A@2 O M"LQ.3@\% ?L8?^:0@(L< FMU(%@(&P=!5[4&/UNZ282^&*H:*V'CLS9N"HBY M6=Q"=^/N(8\**W9K'$LH)\LNET**S!F7.(9& W 3_CV(M1UW>U&[B_$F3:Z\ MI%4N8I;J4R:DD/?C2C%#9]#^E]VBN@TZHUW84_1LY$XE5T\LG -PWW)/.A^7 M*5,&+:B(\&?_@)@FKVL/Y/0@\0C=--KILT"@L*-G\IAM8K&0"9!WL1Y*JK O MB0XR\_KQ\#NF*0PO?R"+,W*]7=.J[TBUDVE,=956%I/.[ @SBQ.GWM(4:Y5^ MF12_]YQYZMEOI50[X;5G$2DP-:E)II,^<*FCN*LB9!BG^BLB*G9) ML+##91]3UD%47M^4JGL>Z,9EJBR?[,Q\C1U$3AYSGB547!( R.52AN?S&J5?\%I@<]GG[W:KK!A0Q;K*HFQQ;>F>79>WF(S@>H5YU_K9MJ@$S!Y?EX@JFXVTV^ZXNW\*V@+ ? M5BKX _ /;/^"_WT-+S:LLME?RWK]2B@P/GL-YOD&0G)X_M<=3-H-^E_AP?X' M+D5,%#A2;ZI_ATZ@OBROV'/B!IV[)?08;QVI/Y#')SPW9:!=P<[4\YYA0YXD M(0B<1QZ3G*A]K-:)."$MU3IRHKOR[,H*>!KE*LY[!"#]$.P-7N!EOH'OA@_) M;6,&(*H;)2U,R?$QTKH0:M# @1D*M\+6P3W#G3(-"1:@4NV A6IHW$$"Q-FX M,I'6L Y:!P<_S KA&V12KXGZCM:H,)8V&,;5T0F@ !CNTE0,> !/,)/XI'AL M1EF=0B!$V,?$NVR)@,^ C@W.'G+Z8@HL9V1M46(JS!;=@'W]FW9##]A3\@8" M EBJE]4ZHPYV[] Y]]:5_I3.0\$DM,'Z*H;J!@KU'S!Q+9]:2)$4JMVJI;T] MV8OZS@+(M(*.:DOO6)":5%M2?V+>,451[%4-HS*;\_=-6C([KJ'CS+ MQT17':W-![4VTP*.1M4LY(@NDQ?05*1,TX^Q\SD>UB/(LL??;)B M')M.G96DLH2'*BE/'4::;R0&E>98/9!&6* HP(.5N[@2*G0OH:=%%VRZ%='E M2(G<][9FB?8@SD:1=P753B<[O2,>4+:%"KBA*FMT.>9&4:7;!)-#F1Y+,*., M,))/]CY/[9/22FZ.:M,QA.$PUD'41-@[*):&A6D2,]X\FA70+*_EQ)+OM6J!Y%'7L<_%Y:N6N_Q6/9(F MD-T5L%35%4QLH(0#OLO3,117WMF1SF_:=M&V#O9 ;*>6AVZ,0S!M9):7Q*[+ MG>\XESA9-IV6.MN\,3W- M!9L$=_YE3%=MU2HZ'6@IQ&05](98TD..F+:+@I>D*CM:)6Z1Q ,E'D71GLZ^ M(U;46EZ1!.D19!A0@0GV5P.CP,KAB[CQ5"H96)C'@T!HO;Z,#/VXHS5E@X^P M55'3/Z'WA(W (Z(=^NZB0X@ES"[I3SGJL+CM-^"^M(GF,&1M1X,]/E9E$(G2 MD[D3G'"++>> :8FG(S[HT3Q@0\+ S*V.*H-*\-7;6#97M[F3T#1DMKC(NSSK MO3*<73!"[#U==/D*IO2IGL'V-WA\X4@80P=O\60Q9VATF^CA1? M8SZNJ7P.?8\.//:B\<3VKG)LZ".0::(TDCLB2GF:8=_O'4T C":Q-WS;UN ( MPKQC[S[\SU\ZN#ZX&2^Q24V[MBK8>_;%O^5K['DJ9_]/%!&HM:J9_3BLRU*/ M^L76*.<4\#NF%PAL'=)R(,3=P;H(]:]L/Z;K\G35^*Q2/M7WHY[+IAP,V_B5>Q%YITH!R*D23_B$2"^, " MW!L2L.[0Z<@P7#,Z$S8J2!M=G>I%?A^.&ZE-_S,6 ^)EQ+NOAMMHRXC.C8\ WND,!.R;P%\ZE]*8ZQR]I)I<,#2=V3+^544^8OMNW*A MIV!&%U5MAO/ET^?A,S[AD>78F.$9B+)Z&N MKLKT#G1 1-2)ZA]),\;XQ1D)76TV3)7;M-*O&?ECPN84J5)=V47M6HP-[5CT MO&U84P\=/M_C\KV1='E$:]&N69NSSF^$I,9Q0)$K #>T!VD#\G#R!U'.B$]) M'"I//=+-D*+R7;"LO[_*]N-C9?L>/,L]X VY/P?95.2Q6?8"[@U6C?N@)99"7S7(2/E$3IQ;K):C SD,A2/N2X2T=C98A>K@ MOO,X8BS..\[%OL6.HTX$0,%?WU22-$"-/?=C_#X;_((GBV=)4[-7="#!Z>Y/ MFZD1OJY@Y05JR-@9<4O#W[KGJRXZY7-4CN-PD@4J\_AVR'V.O_5QEE"KI743 MG"'V>3BSARI]']U'O?_Q0%%N,/4QTC6CM$?;29_*]+=$\;KC.HPGWQ\+T<2D MP==EQ%?M2#@MV M1+U5MG3D0K]L"VYV5^*8B$)*7:7M\>L?#(" M:>[I[@$+ZW?5E#7>O>!5_YJ>K"!?/:B/D$N0J]:I"Q1N[^:Z8;J"Y4X>MN"MYP)&Q7 M> VXU5L&3&"C*D0WL^I?QPNR4BH&,AHC0(/L[K$_,0UC]\W3V M2EB>6*!7SV/-?%@TOZKZP6E:DIA<:G9$6G.TPP_"L)O>0SS':"TV=!_2;"U[ M:G_7VF&LJJ0^:!8(D<5Z2YE$.)L49$5*M"(L8@1_\;=KNR0](C\^7@L3K M78IF:S.LYEB/G2PB,6W5LKH8^$B&#=B&]L;-CHKV;F7+S/@:>M)$%(A1].=R=CMG/(*G8UG6X#SBZ?PFS* MRCYY&#E>3///(5@H'&W?)8$\'/;E]/S7 0S25#'&G=PT^J>M,%8AGKKP.7AZIW!%61VQ](Z?Q\ MVCS<(BW+TKDP2LO-E(+NE$ Q)[T;*2Z1QZ,";TF^G61T\Z[@H'H)W@GQ3M(5 M5(@;"UKT2@,D,.,I% M:)816G1#9;0&78FE(%;WCDLTZ(56LKCNG>AG&LF[; M<6XM)E6(&E,30%F\!N!B991:@F%!7L%X7;7Z^V1!24R-S/26?YSH19#8"O#D5TE %.>>Q&#J37#K"W@5=I C6@]ZGD$3U5[#$RL+- M>(5%5&.P9_Q\Q/JX ZVWY(PH9IKTK-_%4DB+TZW,7#[71--'TC-[DILCJ OIV]F),ZPAC&^\$(/IA3E1$8:)T+I7 MHA:W](_5OE#M^^)8[;L'SW(/JGWWQDUZ4UJJTB;;B42\^$83^N@7!MAT;& M<=#FMM!8YX)-V;\!298^6&APNX6P9UQ0WW%%:G$MNX8T)?HHG+<*!4 M=;L"!I8N$YW*>;FYP32XWB#$D#PP5-G9'UC2;#M:[:G*^NR9M*]*;!3@X\K7 M'V]FC;I"*#+B'!IZ;?!*WVX1M1#H2:S T9.58.7&R"7$DN2WR?I*+ /-P0F+Q8MOY MJ5T$[+*FB[R_1#&=FW[G+*'EI$MD=(.A:S+9TNM\*SJ7> C%$@N##=K-6)M4 M7KRK^BLT>"WV<["]L6,BJ>[@)HW75M#MHX+_W@40M]OC>)6-X+/1K2NCM(@ M^2A=7*IA)[A7>MV#R!^?1TYU N??4\04^G2M)N$&53TJ.&%ZK/-)N2#1I>)5 M(2V3O?2MY+X""\MBG'<1X2"I5SGYWDC[U&*Q.-45=;!*3"8&'F\V@>[Y_31S MI!Y@TE'73D<+HG;#'6[T8_*&7?IRI^[SR'P))X;X!4MK?4+NZ;S#-@?T\KFM M@C:B4U#1M39::+J[@^ 4)[VM3S>$<4Z3RN^%.. /M0^&[?H&"@H0IW; Q/(/ M=7/*ZGKY[?->)-,86Y,%M\3:BZ?W!HS?>%\$]RAT(?J]\FZ$R4?BI/=%G(13 MBX+0UK@)T2QWUO@.SB/UV$>=%-& YXX>FAZ;%=(RJL0F;4&#/8XJ2@/6=$1D5FFZ--*FIFA; TTOP,8\3_4F8_TPPG&:V M1.CF@O-SR##&$,$%,S90S;BZ)@\/'KT6M3*_^.&$?=ULAA*01PA5IS:$J@C$#K;MV M(V?14I2NZ7 2PD28./A9A[E/!2ZS\B""K5-U =+ M2L8-D?\+)WEJUF$[%R8FFSJV1Q?5A!RZ#[^0;3UM2 M89V]1/>5,EOGF&GB6H;FI/"?Y.*V-=T3"0/A#9?X#PI,YWD'AH (5S4D@H%8 MA)6G],KF9'$YC9SF@=18U1KU$Q7#B7JL(Y :!5AW7NI':8< B?OR"(F[!\]R ME';X+1II_@+5[-CFP)P,S1([6D6@P@Y.,PU>:7$<,G*Y]GZ/='M/]_&.4/J?"5,?VN=/6 MJ,Q=)WS_Z !\=-\];LL.F<:AZ:BU,5>X5=EU+:S 53:[A!//==/?Y-UQWC[J MO#D&&7 X5D,C3?1*]5A>L/'7CN]>MJPU'>;XF5D],9X7FT,.HR+]R-!OA1#/0!5+< M4;E\%PB"::/CJG%PUHN2*1 +! )>ER,$W"V B7#\[L9@3/7YC&&=VN0S\8HB M4W!'[,9AS+K'/J6AY X@][@[5@;;3;R&;H&SBER6$;WA=8Z$9A%*BFTDI:"$ M89+_2>&>U*N)^@2&06%3I[/O EXTH?1@I[/_J5H=)G@ 9=F\*K>6]+#AD"FX\P,BWIB?+\5F$D112D\$M_6JU%GD MP2O9]*KJ@QM.7R' CC'+*=63O+O8;9@:;82-'1QU& MOY0A;+*]\_W2NTQ_^"V=Q5]O0U'-]\K%+&IB^"@U, 4Y*F-P[XDG1]GSY]<1%]/=@ M UX.39DQR ,L\V+1=@51OAG&CF#(;'==U9IL%1^>VBRBET^@ZO!E;"I#@C$Z M&SR4Z%\#>"J%0(C\Z3Z97V;6#$I$XY8E:"6W,(2R>3:CY$<-3IQC3<["PPD5 M676=+[9([<%_H&@)G>9.AJ[MKA*J43ATV&[)5Q:PQO]=TDLF')QHXO,M6&\O M\,=UY"!N(B9..C94PZ1)VK4I?4Q, ]2BTTZR#.QU>'=!'Z3! 2](N\_I16I)0Q]G0[ M4:,8GK01TT+:3U=I%Z0.H4Z<]0MJ^XSU FQ(U:TG]'%H%M1R0GSF:$-^W%; MLFR^PX=.OE_;&'MOT/EO1M9I)/,Q@I%V'F>_J_D#AVRJF>(3T9!^\D/IQ:3L M",86=.2@22](D45QY:Y+?)7_J^T<7Z(M>!5]X5_"SO]K>U-2UY^0=,P^Y99_ MA^[C>^E'W&!L1S.5]D1_RE%]^-5_W,O1,O=(B4U<95>6.T61X#3 AJYJIK?$ M[H1$I(A/PUB$"'[48+-\K;$@,NU*#@(.X]R) 3$_>.@3V4FT@@_+S1%YI'OD MXYZ8-X8WU:<]1>^^J>[G*KE'&^F+^[V1Q,I_RB&2."F0TD[NZ23@\:VND!:IB M[[';C\>_=9+4Z)]KHQ@ESG8?\*.88)[,AC_^[=#'5^O+DEQ_8<5@2 W=;$\[ M9O"!0PP9+"EYS1F3H&%0UILB\(0G#9/"Y.E3KP!^6KM">FU^B1T'P>@+N=(!(/F+\+H4:U<'PY\6,?92 Z3E 4B._R.]6OE*8D;;YR M8YR]?29"(*5S*[#E?+J-(UZF-86(RDR.^_\SO#MGR/&>=KG<3O*,FY[V6X MY]RIE."7X8GHOSJ8W%Q =9^Y^SB_?9IZSU0YW-Q&,ZK%AKPH?R;[0^J9/>9\ M:)9%0)H**K=.^%@7X+(L+B;8+VCFD7:@C-4ZD3^%'*ZH.^J:DO1I5Y4]A43U M1Y:[ .G[Z@CINP?/EW2\C4K1ESR11UTAM(I2J M@0PMFT[I$<^3)OS&/N%!\@5[SKH[L-01_P$K.35"B9VP"#AI9^94$66)J3GD M+^R9267%B6XA+AA893@1A4D';Y+>85YR8A7NLM7*+_:W1.4)!P%/0G?Z2RPJ M8D\I19Q-N;AL8*(ND.&O1CEH.&+: IF.QQ?K2T](C.1IS$S.3RVZT4%X!1W< MKB+E!+NMTI[W8UD1*I:0%CC"2#6OJI>UIS-"= 649;?M-3I@;R[;.I+ G 9M M3!#41BQA8[X)00%=L[2&9ZJ,6:,CK*KH\=!28X@<+)'F9-V51/#>M\O-#7$M M-1,Z9>/E@VHQC9,G6U5\2=H&\7"AK"(N<.%WU.L$EN1ZJ[U= MMB73*@JSE] J"@Z@/GS$]T';+0I:>PK5C&0)+AXH_8?B LLL@7W2Q\8X?5:3#NY6 MJ6:SCW-V?X*BSSLZ4"]V@%YPC/4&,\Z-BAE+NFB3":09#>(U\LIPKS+1F864[XPFAB/R/C\_.3A_"X0;G'&,&'CYX>(97_N,7 M7SP^_2+YRR-> I=E7E".8W2]L^SQ-U][[K2-F!<8?\:9+.T.#[-'7T7?IC\D2_)K3'^YJAHDI^2< ME;\LRC.;;6*A,'PCT9-@T5V#OR0YM BN:%!9?6'+C$HT M,&4,(QWFMAO?^2#\#$R^A-1%L%BI\M4X00%+R] @US#L MX*0[!#YR5B93^%7*#Y3 MYOE36314^Y9)UV5*WM+Y_CM:%L*A'N(GNFR7RSBA&$\PUX:7PI<+>_MT=C[: M^C>"B"^4@5E%?O"$=Z&3U-$)>Q:N"3^B$I]\9=%1D)O\-,+GW\D&C1EO(XQ6 M=@O#,C-A@*%@'Q9C582*P30*JU.B56[0^\FE?"B(KD@VP+DJRN_+;\UBEI&" M:ME4Y+=/:*V8/L=I M;668J&WG'>828; 0N%.J)FF:J@4;DTK.KH>N'THR1NT:J\A#4VUD"I5W$BB?L_H#1.!!_F< M]@>^'

EJCGJ'^@J,95F6L*B7(FO*S!=G M4LX[!WHF!W\@5QN?7YJ5TOXE M[:%1E)0>X_*IQ&$1X+;@IB M.0IWSR!].3%U)MI"1Q_,.KN"W SC+Y]RF9<-S%_)DDIT=F"RFH-)'.9VZ.OM MKS\W*'8:-7OA3?8X -'!_^LT."%F17!S96AG"UX*6*7=-E(=W2/2R344F^*# MV!;2KV*+A8RK@KT(KLA(<2QB!)?BPZ1U&2B M?C7)(ZBS-HYA<,BM/P[BT,75R5PB67<9?F!:6O *L&D@QN<*(OQC%1Q0G-JT M9+OCQEJ.\\5]],+Z7B)Q(F?;_4@J/[?"<6;W[Z92I2]:5"P)SRS9RF03!X-= M.=^&/\HNU&KT7ONPVR3%PC^MB$U3;(0M[U7GY2"$3L")D0597D=8@*W)%[Y" M'! (U4*%NF"[#/5%2;'-&K7]\BZ2,.=$PT:RHIH&WJ7K@PV+ MU\S[@H8F^-__V7.\$%K;M*GO$%(3YRG>V"HB>80RAZ7$94A,M1FS!)8X*<;4 M44U(2+S$B^M!)SM_.$0>WX_'@Y?O986Y+ZPHU%M>R]'I*?@:)F89I&Y/V0,L M,HM9F(( 35-0CL7NI2X92E%WUX>PK4EC%8#$+7D" ]@/*ZK&M! =-7(&T9NZY(TJ/=LV MUG,##W(:^&:;,F>H].<-*V3#N%&Z) ;@J! X,MG+%E((3)"9+&'&R=?B8X:( M0LN"*I'/777JE<[>#R'R/U\P\L*-%&O-S0=Z0G@[\37X6-FE6=K#CJ%<-6YO MS ^!_]+KDRW$+*KI]7<;76F%;>?42X$FU%^ 2PZY'%;^(DC6L1 N#9MHNC+# MS?!1HC&#@S_\NBA7N?0=K/.M@5$FE21-YAL/OF%>(V5JB30B IS! V*Q76BC M^')@G$T^P#+H=(U*95C_:+*&O7.1TV0J>3G1#>6Q1X\:O5NTKZR&K?RM=I3A M\5@K4S0>NN;R!IS_;BG5)=/"@E5G>!P^G 0C\)3+',X_ :,T6YY7G\JB\HB] MK?-Y)!#:X:Z'E^QG'6PQL)GD3./&X68$NN. DG!NJ3CB%R4H2,J5KL:ESXRL MD-<0V5,[ 5TQ/=N350T1_]";I9+%/1^V$TB]W,M:.AGJ^!<9R+PT*1)?#<3TU48LEO6TG63 M;P_"7?'X6WS#A=K[B $0YY%V3L Q9A$@T* 86C]TK;05-.*A^&G/'<*U5VY M(CE*?\(::17OF#46;D,@X]KEP,B55USJY9*DTX>=&O+,I2[BP6==[/)MCM5/ M)F992!BI]=]IWGQ8[*];6#5/^>1H9N?#!0(GSK[)&$=#!1FY!'4HT0;Y2PU; M_:]POPO2L-B(%272@U//HX(Y?:]8[ #2+R*H MHLV=]AKZ5Z"S5PJ2*BD\K.$Y;RY+VC;L6OARMTZ*]SPC[*D#UWA(AA*%GX2B MM<(-%+6K3(1RZ*F_*B/@"_ G9QGVM=*5 MD"R#5*AY[OVT3;"*LN'IM5Q_FU=J#:F$K)-129N88Y"G&E#&1,-5&T&R6RB&HA@IGC M7'H7VI ]58^U1\F?2"12&2T0F]BBPLJ,I2XH^7'9UH6C(VIOT&>YK-:9W+PH MY_A,!CWL@1P DN M@=C\:L,>R90=4.\EVI4JP[UQ5$$!(:6$;[RZ5LQ"XMH7?7+%8X@]8D7A'[J; MHQWL,/\)!Y!DA:(\\S3_G/^AUJ_C&;A;$O@]T<[]_HJ*WQR+BO?@68Y%Q:@Z MH&!<;8(XR?N3_$2;K< %*%0C71"*ID)B,-PIJ"&AV 3;IJKK[F+2&Q9<3^I[ MVQ=([6@". SGW\W#YK+JBA-T^[;O/B<3&.ED;2W5_I M8!'$K\[<'#;9BLZ9:YAOVB^%<@4*B+4=-OE%*1Y=\+'H@ZBSD:FF52\R7) @ M-)JUK!56PP=;V:UZAM'@XV0QI](BTKK/TNJ*G+G!MRC=86:/*LKT E\5;/-2 M<4!1ZG;,+-L/:R4QBP3@2R,(\R%-&/9 M)EF#GX?Y==XC4[EB#FD[R:+I\+(WW&GL)@@60C:&AQTE2F!OXYFR8=C JNJ' MOBS2="+ODDU778#Q@3\7$.]058*O5#DT=-)0RAM7J*BQ%7EV0VRE/7;L%RE! MB#\:H[$4F.JRNJ!3,UFCM+SK[40G@*M"P64E=UJ4U -[/=18)9P[:1379DJ! M(8/[0QD;CV>&W?J0(<3+CM+;=6@+,-XF08/&YZ]]RB:-9CB=RA,R0:#OE*/O M-FCP$JNXO2\;$Y';4^]\:)\GVV4-,@M2Q4W1SE]>[O!YD?;QK1*U%D&"R"\CH/Q[F(7YML M'S>;TPJ'@(4<%7&5]#]0,:%MK[ 1Q]0X*G"'"NE@A2O4TA&S VQS&*?2!YH' M-OS(++M="QZ@;4IJ107[%+K L]D*,VR&Q4"_CC9Y8)N.!2V,OI:6=32Q_+V+Y-@/5>CP M0"7XA!.1H$O2"K.,\ )T*@]=$^\*A^SCAL71EI@NQ/')G3[*%!]X7N!V$))M M9<.V.$.1A @1##?-2KJ"76^K_*HD1143H*9+#TQ)EZ^K MHG8HMFA:-I<=:9WXXH\.5C35E(*.<$6VQ0HDA$CFH&J MG]9JPF81V&27L-6N2DJ0(OQZW=X00)%"7/BP;F$-N>:A!8PAN(HMZ9=1IX05O_AU"GJI^T<[^ M;H''8Y8QXN\"I7#1A"MC0E+ M86U)WVB9 T'1P+P2EV/'L"#!S=N/ ML2;6@P/:JSS:*(&C><010&XBST+P(,R*A 8Q.1M09RA.B&U@+Y6>[BA8R(:) M-<'LMMB@1C5H!QW4@]B+92'R+)V&68N=V (%D3DE)T'4%-1UV+^(0MMV>.%* M$,IR46:5D5XS]#0O4K]B'(@$3+7N&BD7OP/&930P\6E7-/*%=>B?)LORFZ>2R,[?MW6!A[!!%S ?E+; M:IJ$Q)1BC>KC,Z8:8(Y@S'$PEQ4Q6CCP-[.=AKU%6\EF+4AS>0JV9(5T+O^J M;>_C9?,KFDB.-<0[U1"_>'"L(=Z#9_G8-<0/OMJFO>(?R5[]&,B9GWNXUTN! M>V6S?R!(,IN]SM_2!O^1Q;/:#O'2&W0Y#B%$^*GAE"K!_H4PCLXK!IR2=-@H M(9O47$(*+K-Q .4W=\05H;K!<1->3.3=B$-:8F\O AM H&2M%"G872+N(* C]64 M7 @B0#?>):GUR7_-AO5%!Z=QKW@MKUZPZVXW I1;$I7_2,HU 7E2 OB&4?N7 M.;V&>Q8T^K[/0]Y?'("8O?45T>7%U1[5\+H[33%79'NN;O#+9?IJ.ZE< X.K MH_FPT-=0\][#8%H%_I7#%XS\_SN5/^Q6=ZI_[*Y]$(OIB@B8VDE7TB71)UJ" M\*1>7(Z>3EYO1#!OK0"N>F-EAW7H4 R=>A1JD&Z>@DCA)TRG&7*-U&=CS0VA MAD&3&1;JR,9I@>42PIV[UADF<(PNQA$FHQ$0,L*XN;B.<)-4!X\6<13XX&)" ME*#UJ3#@!/=^+$4SE)\NFRN,E-+\%M9@3"'SV 'G%&NHSKTM^3(U5:E36C@510 M3EK@PD6G9'("8$AV=R,!NE1U4M@0GR>DQ)U9BQPK7V+/GDAJXPO")&_#>["Z MB2-JH[7/&/4 @:#.AI"M:>B\H^[,&K-+5NF]R%&:A++Z>'_I. CO,C&08O'= M'N,>7L^.%'X6%,F=2A'2(!.7-OHHP7$^'#G 2%6 JYI?!+(>[6T1^WT8_< MCD])3RNYY _\".\XS(ZGI.W2\SS4Y$6PV9WGQ%8/&ZVHA4F.11A&A 6A[&9= M&>&H--^C:DBX?@=^\#!.IS>EK5H](^ZT9J<.H/T:F M]\C$&MA"I4A&>Z+N]"QT,@4*F(G1WP?#GKW4>^B>07% P0;')0SN1IIDEF'\ M*I9!M\84,B!9(S4K(1/@C=*L)#//0G>6=X(I6Y6L3\'08'HD#IA09;TN;K!L MA,UBW/"$/3$HL&/MJCWLURO,0H=^S*$Q['N[2SCP%"D"X/Y,(H#3HOT]*N#E M>IWG;:&=4=:'SX=G@/"G[&8_H$::&H-,<,"-@;2A6@Y^9]O&QA/L2HXAW/F==(/SIG^,C9-]]\R1?X M'I;%ZN0?&&Z?_*6NZI*^D\EQ2@J8%(NCSQ?($W"D3RGW:;+T:%ZNJTX8K2QQU1]HBHJ/I+K/I@$>2F81L5)59TP7+W>5C,M W# M=;O4%#$[.XB/5>3SNJP9ZH3W7Y2NN5E: MBE(W"_/0.PZCD%WTGG3ZMDD4C^#MMI=NEK(1Z:V(BF C K@D10YG$UP$C:L> MFV3JZW8.MO-;O-?+<*\?[?EFGZ&W]?#!D^^_??DC_?/LR>?H2%2]>PMK"VC; M*PU>89!_R+/GSQ\H%HK<@=@\(4D4@F#0+\,!GJ"6 MD_H%I2T8C$.*3.5&1FQ.--*=PN6,CMZ^HL\,BX_7RA)>>F-@3" #?I%/B M?J]*:D--&*QKL!L%UD;@[9 .C)?<4V3F;+NFR@ED.R!0XJ4L;/0U=$4]??KR M7%>49D@$H2]<@M3]#P\*K[9JC1$%F2LO>EM0%B\%MXU>SCW&0AY#%@(.0"&@ MP?"G0$X$V^,$.;6<@+"%GM/^'\X?O@ZGF8E,"P>2]_.FY&L3MQ;O+]H",#T# M&1S-.1/-D=PP5#N6\:W&P9M[41WF'_E=HM%^^:.-=D:=-]0 DAH#!T]6?J.<]IG:1%YL8EPTU\L##O4#H&SS\=W"9JH"_?0M3AF5\_-;;'/;=WY'B M8W$%4XS'_-\P82G__BN\8,]TRS_ ]-7P$O"O"J_=HE;E/\MYE_=7.0_>CYI&DZ^%G&*=HOEWVYVYG, MWM&;#"I7X0@EXY_0AW*Y8<(QDUS!WV'2BG;%4:]8I7SDCUGXC5^SKK[$:'7: M)(-5%S9:8OM_^CMY%YG8?S9O;B%$TE4;]47BW),^Z!+L8'NCN9/XC^8)H0I0 M:.:)?5!Q'OV3[W0- WGC()9)6U'=[].3L*R=P1Y#> M7^;%89_+9567NYSIHH11*Z8&"KXFPV^%/$[3;6T:6O$W[?B@16GE#-B4W#LU M'LEG4K CO+N=\<^>N2.>6"DAQJR(#YC<=>',X0""BOBXV@@&0^-#LH+$OU0* M[EM\>>VK).+40OKI883:JY+;"XP9UZ#Y9'FKE?,#S,ANMCX#A_P_R[*+O2M. M2+>3"] &X]DY'/0;L>'8I;2HX05FE^U-^IO4#-.6)KB8V]%,*49<5?H2V#PX MK @LP&0+U"E'&Q%NP@]IST_%3C=9R3-H65?=BE''LW+7]66]/)GB7'WVTPEQ MBHMUX%/F.TU[L5EY=5/U_?ZOR7&:/A_!H&FMR+C?=CNV1RX/:\XR;-\"IC>B M EW4B#"/O&98!(B?GW!XH>#C)]BXDS4M44P MPGWKZK-PUOEE(W='_I25UYWCH &\5#"_#RW,H)(1LX#K67[;,]^V2^ZP(7_M M1HRG!EY!QB";70S@PN-AR74H6E4]L\!*NBN"83FFOB140UV^DSE3;T9F;\([ M=:P#OKX;ILS(%HF$I\^7\# Y1N2J!Y4< W*KCCER\/%YN?H.'.OO=!Z"(.2" MD)^* +IDGV7X',9FZQ?"3O;@7T !%_?,.@P,5?,8DL3IQ0NX"A'DL628-B+; MJ+,[NBBK]6:_-4M7%YW6L"8W_RX[#KSDD0+4%V=^6 BVK&.J86R,W4:*#; B MUK*7S'B$&@O5[DNO91D*LIJFBHO#@B'$YI]17G5AJ:Y1"EA*8U72$CZ]@I1 MB]@UMOBO_4-%5MV/E;$:3SU>BFZ8CK0BB0838J"B(VM8)"Q38:,$4"=WUZ5M MX[^X/_-5NRI="=E,GR^HHMP,GO7KO$^3)8&Q'KLSZRA3.\[1T@+4;$:,B_($ M3)'JB(%#G,0HL0+4.)C&>2T]E\>B7BCJ/3P6]>[!LQR+>C&%M_H%Y!%/9%>R MD$,KKL&F2#+-"*M1G'WM>EXUS4YMM$))+7E=2Q8B.41)IY=>6]U)1916&U,J M8-)8Y[.@E5VO:P&E05P0^/BF=!O M3)C4PC!W9(7\HX)_2FSIGL+M(4MBWV8>"*@>+[]&I7+7SE\+^@N5]A--G,49 ME_7\,OC \('(R,W>.^^A#K(9SYD/1^0"Q9M-;XF,NQ#UCT0VDV A_Q!GT4XN0B M^=0WH<.XG2F1]#N\@X+@"R*TN?38(O&JDZB,@?MDK MH^ND+@KE*Z:>V5JTXHY'[(X5!B"6GW2L?;ACB4G�,43IKZ5*DXJ'R@J$?28K\; M7W@["GA<_$0(1I<5HQ&4 @3?BFL0P6]QXBI,&1PWC,%WT3**EC-S6(1[90%G ML$TH;#MJT9]Z>R*%4+B$,/1%_1JRZQ,87(3Y$,DQ7#P'V8ZP9."D71BG^;Z+Q.GF=WNX".-AX4&L M^$LY. +)L+9,I4TZ_KIH)54-J/2^F,M23LXF&AJDUZ71)>(I_!@<'$I;2CN) M.W(GB#XX)6O4@LM;1DP62,_!,2G25?FOTJ*^-SY-VMK82+]PT#L X1"%"0Z M8!PK:,W:)M FTDD8F*!3I*?H 3 .@A-57"Z M,C#]'_S5S/[^#XQGNKU?^\NK;^,/SM<(,=7/PH9'2;N46$7DN)VF==*8[?"Z MN-.IG%'-43U)!06FEI:1QDW024L0[;%-][I0+!F*B\ER1C^#+]RS6Z+MB@30*\&N>,G+0WF M) N&_XC78'"9CA8\U467KUR>("&SE>L1Y F[["+6!,I1\A;C*$88$1@D0QD/$.8FJK.1Z-4FHU%7F[**=J=VP^ M'4FL]X0L)>5D>ZH*5MUB6/54#,:H)LY>*F$2/9D;:56OF'J<:/1.9]\R:%]- MW5VOPMN57*-J,\,>'L[ESA9;Q*WGFTV^N%+ _U1P@ME/)(W%\#"E/V*9:#[6D'JRP]F0IY2_EYB5(K^HS,DXRAUZ-8D3 M'PWT>%3#H',# U/?(M!3J+Q#L+?1_@8KXIKIIA>HB5K8:SX*F)@VBLJ7([/L MBC/!(U* F$=(:#TYFVS,7!%WZ2[JXETL&G]XJH M8&NKEOY"S)=#NB#,&)8ON$I&(-P1C?QD?78R@_E>C[_?4#Y%:D13@I$!C^$Y MWX**"$WQNLX9!\F #\=E*\23$\2:8=LH]K3&S)4V#HV$[TT( MK*9G).2B=W&H!HCK==Y1^\[8LV=@X*21T6>JNI!5APL48S/_4$(R4VYIU7GEV,'1 _*IC*>.F-Q#&=J+U>'\UL MY=/BI:!A\?E3$4WX\ITT-/>+9\;A>R"_30DTXUU%PS.Y3'8-U>VTG&$GC\YG MO/4M+\)I:D8PU'*JD>*@$!I9?"(1'@:@FTVY6F\$&-_V,2:GU?Q7*,>8+%+" M#^Q'1[H5#2;-W$AL>ESN'WX48OJI M3H8($<:6,S3*1%LD7CULF*,U\EZ/K7OC0WP7!E-I[U+GT=E9-8V[\KHR9G'_ M[;2I.5 OX'5@@!W)R!0E%BC)<'.[WRB0T"EPV$]MCB&M=#!+1(R-_XD(!T+O MK;<\^*B9LS&)5NR<&G.PUAI;PC] M"4],R, M6VVKJGD:$XS+.BO)H9<[34 M:*9HYRAS.T3I1:LG0(2=%.(,$C6+WI!WI#OH4'*&8)U&KZ)MC.K[&I MXC24RQUS B=,J$. DA06.L)_"E&H0FJCL*>?0_:O^T6$IC?E/G5M.HHREAT*ZR";8*>%[(M-=O)"8^*C^-J3H0= MO6W.#\),,C-*:P?R7#M1Y;1RB'F,'OXP M\EW[JF.POIR/H8.FIYC:1]L$OJ>)">DP;F'A\#4&0BXN6VH$8NT*2B&.7\MS M;U5-TUZ[=H#Q1=9#A^R\$Z,32JJ>Z/1 EDF$Y)]J."+;.3&!NAA"I'Z!F $Z M^#8,6M+<]*P'U\FL)(''[%O&H:'NB@#GU?XS7,#8_RL86'*N>W2I-EEXQJG+ M^@L-$M'EI&?@9#,*E,9F"5M50@CO?%>?4@V8(TV9"Y.SV!OJ!&#]$5,HCM@+ M9;.R?<*R]45@(@Z)%GQ-Y[QY.FWN?/IDHA]4]UF9#;?;QL39[#Y[E6)OU M1\480"B(;=[J3+\@AC"X LGV?S>[FJ7!6)H12#U%,K-:8K!S1WMZ=YIO/)O, M6 M,"&'SBH04--LR\3/-L)/Z]"M,[P7+_:O8(UPF[CW20C"^C-N,G0MW2_I# MIT+. +@R%;3ZLKXNQ9/S)RJ*^>JA2H<$#^S-9)#5MMPZH8I MDJ*^KQ<+4HEGE)VZ.*7)FEO,"#JO*4(0\)UC9\$I1L'@0TAEGJO:4D J6_)A M8L7RI@L,R;)O>9?<@E\=+^E4O6ZZZ_60,Y\O0_9OGSV#7;$>*'YF:/^*0PO> M=4R"8+0M KN.-!/Q+]K:&K![&>DHL%A5,R#!+U.AJ0L>LJ1Q>M( CL8G,+ M)*.SQQ)=!$T<=8*YXFORRV3A97'>2SS#T5*\-3,1/8\\.9/;\-V9 #I^^%%] M;*0M"*9IA=9MLUV+8!HNK%6#G?C)$3"AJ*/OF;QC&6?R^"W+.QU%T1XF1QQ_ MY>?70^L]E%-6E'0!6CV/%NO1";Q%ZR+ M6V\&%BQW@[85Q@%.8F'4AQQC,/O51KO^N5XLY&8[2'39!V B0EX#UH?@3F>)Q-]8, _<>5N?_Z\L0Y<'1O&SKJK6*SPJ3./&1$)9FKOI_';T MC3D!0R+>-\98.) ;_QW3- .G'.5)HB-.TSO<\C]"K T8U?$D[KH"5NO+S88R M(!RJR[>8,T_!:DED'IE!W2/RP[!.HZW-F37,2/")2$V0YC\J;0"V1]J@HY0K MU^2U-\?VBV*DY9MP,*C;)1!# O=?BR KV@]CQ.7GD%5.UI JOS>-N>LKP@X& M>3A.JL##;E@;L1%'7$09.U]V0E-]EZYI22ZP#C1M3)Z4:4.*P^;+\_N-*GGU M- X%"E+VK8%O\GYS&%OS/-"W@+U;B,.0J^^TM,N> J;RY.ZG*Y M^?.7CVX?AY-'9Y]P(*CY[LL/+;RX+Z,0#=C#KW$DUF2YPADC"A%18V!78DP6 M_F+1FFT)6L&X6;@W7G=($9]_1GRMN[=UU>O^R7':/]ZT+^@D6^575$CAHT.Z MR8<^9F0(]#9@QB[*D0E,O,O=CJ0E,XXS_1%GFMOP?3[#=TR%Q X&60$.T)58 M)[N8@#2&$\\XO=KF1!9$Q(>SC9@!^! -N8[C(OB8BR#@+M;MIE0HV- L\^N6 MJZ%=N\WKC; 32YMV(#HGR"RUAEIU900U=KG5=RAK/T$G[[@6/MY:"#D$SGM+ MLF%'^^IA^*!11#1:Z3&I?\9],I+:]8B!S.%!#+"/N&KJILK!LJTW <0?B=EK M]*>.KH]&]7G %5LE-0C'H=)+&LYZDBS'1,%+8'X. IEOY/! MQH('+.2G?'<"!7E2LK)9=%OF5G2[C,YD8YD8$=09@:\IUG!;U,8"3U(ZO?#HY3[%E'.8J M"T*X.O_R'7+!RYQEEBU:U#E\W]2A85S^1*1VC5"X]N6J.C&M);PS/$>T.0/) M)PL"3$U43!Q-N5_:R.3@\ OUR:\=SUR7TB2)$V43(5;!KA4/G,DR1$P09>-: MAC6%;*:W\OK8PG"PAW5.-:B>QDRIOBG9\;YY.OU$Y%PMW0CL&!:5R.;T2I&( ME&O"\#'%>4&H.*ZOQAUJ%:X?'.))PM*J2<9 K&%FL.$)5HSX%X[VD1+G18EX MY8F>:T[(MDS%6'6[63M_?Y"A+XZ0H7OP+/< ,O2)W(8+$IZNMR>!* S*49 8S[R M=CUC@RB4.UT7/*0OJR45FLB/8$%B[:CP /XNH*?*M_!V55!4YVLS6)OQN?)< MF0C:<+W%YR8V6/@33@NJT4>7&K='JZR3ZZX( S+?AD>ZXZF"+;>+F@'PNYFW MYSRH=SVI"+U5!@4J/=D99:4\O9Z)1%V.I@CSY<;!J%))ZZ!P:A@FFFD<&L*B M[D][B!Q(?#UH7,O]D%NVPISR8<1[ <46 <-8S5D$V)T?)ATBDG/)WY;:H^UF M_H8T&FL_!5[B+^KDQHJANWP;"*KY0_R]+HO#" A?YV]Q?47M#Q$X:<,%V4+D MHC#OR?5MKKA62MLRK4;/40Q=:,^D>7;QZ>LDD2H<"%LAI'9B+GU@!E%MCL G M_KQQ;599Q!5DRB7\C+R.E '=Z3X8F1L:,CV3HI'#'@L1-B6QTU'+A5'ED-Z' MW0\BE4)U3PR&%"]-'AU^-KX$!I E+U(465EQ"Y=>+W!*2W)D4Q%3!V&I]%F( MG8&IF..=YDH=^0K/ +VR$OF,>\LADB$=AM8>DY)B^)_N:1Q]IR;>W+S*,*2Q M35B$L<&.QQY'B8LEKJ-!DW1$E80CHZ/*9ZT'CAJ\PX:GOPQT2ZPG3V>,#8VH M@XP,D"?^FZ7-1=)AIPT<]) 5JK )/DU!#'0$,8, /S]S3;@EN@^$G+QJ8MTR M9CL:J/4F3"/-['KH8/?TXP M*EQ]!!SHO3F4G@J%MV$Z"8"!(VSMN92GCA$: MO4/^T,"BH+AK$4\N!49LZ$R7<#+!,*U0.<6%Z]8H+97#DT MJJW6E&YRVNE17^"L;80E-K8TZ7::H*!% LX@(B: =WJH<$C&788DS4!SC^8- MB=]HKMF57H1%AU=?56_ILLRH'H2K^!NN41A-9[@A6LZ!LDUZGSX0\F+%HR@I M]X,'E#YR1B=+SP>):5G $/:VE,%@+*XDOJ*4>=-+0M$LH?LE BK!DZLS5FBI&Y+'?9?LPL)[8&'Y(?I/[LPUB'0M?!OO74%Q0 MC.<%Y#%8D.$6FTZF2[)@P=.]:;NZN*'.3&_:D$EAZ#0SV6*2DOGWAHXCN%"? M8@9#IK=F!3 OAD:ZKOGHL*;\NQ#,TIVUZR?7#F;3S4O2 OHJDMY8D"\,% M5ZEEG=QMAJ:$"V1$ZH=477CX6UEQ0MH*8K%F4:W5?TV7@+;>HI',P^W.!W\\V <.C.5$F+]XBMK MB!9?.DO&V @.2*(8M4C>BL4,'KXX.PK2X$3UNXO".IZUK6]%E?/811.SN<8M>!E>-%RB(Y=M%@#6PTK M7HBX.M%*";S-[,_?O'@ =REKK6& M S3)4-'%L(!;.)KA)'XB@9';.!=X4"HGY%)],.8CJUI",GF!;\+SH1^% %H61 M["'70WD"WV-C6L;]6)ZZ6?4S]/!UJ0?*VBGM![\O#D.=G.A"]>+2'A$K0CBJ ME2(>@V+3 [;L0PB:$W^%*[08,N=UGU)$WH5[?MQU2S24_>5L"0=GX/8DHR4" MIVB^G%.3C[T8U*4XTB"$FN:7QYKF/7B6CUW3_."K;3J%\R-IZ_PH'A <#B^H MA>JR6N/K8!S^E/MV7V%D>PA)JQ^X3_2:&BUK;ZN)7ZL3N-IH--#[1)+_@%*-U8&R M2*G*1>S+>D!(M[G3F/5N&VG8EKY@O.,2? MJ"J=&3/,?;JCW3FC\"I)YZQ03 MY@+.7]L.=D2"[T*"X^"CW\91%LQ+I,Z>A3) FY((.D&OB)T8\PT_#Y5F9ZRZ M(#!AH73H4DCRK^T%^=133$[!IYUB>(2I*4ZW*.]XZ<,GDQ 8&-!*@,D=5ARV M"2N^T'6H!),U^![G[$/-F42H.DM.^D3Y$I#4,)U9!M;"YJ/3DH".QRGZ4%.$ MT6P8^LFX*U.1P8F(;,27)'C_'V$^7.EC%"M.([\AQIY 8@LA<9I7H/GT$\%$!'DBGXT MY]["\BUR\#*U,S;+D,0(Y6V5T=M'$W0MY!%Y#QWBQUG=-:N:3A4=#X25J0B. MR,K@S%V56RFQ-.6O[M0^3L;.R8@"L"YD>$(BXCCX'_1D(6HC8@LE64'K;W(< M"7NP.2I!+56L]]'*?IRO7?.%J+_!&@-#'L'G J4WT_EHG<+[T %L\#Z2'&SY M$!N:ZD#;W E)[L-]Y$+GT#) F>@+3.X76AT#B1>5YE"H?>A,)T=1R%RR?8OU M(R37BF2&7&J6,PH^ETN5Z IOND'=T;)$-G\J(3H+&$=.SM5F^C)]C/"LVBL[ M[]J\T%>.@F3*;.:B5W*'O"CQ[6)W1FF"?HA"S7RX0+VGRC3LZH"84^7W(_G4 M.;4';JPPF)\TA?>F MKH&U&A''&6<%J#^#2L7>+89]86.A(>MA&*L)WFX%8DDO<#%=D9"_9B&$E^#^ MYP'L O;"!\07:EF53/Z'"'4(0":^I*W'6003SUQ?LVNF\::(+%E7XB'#*?1H M6?]G'_J[:,V?0RH&I]S 4YS4;7ME32U"5**5&U9"$<4* M1K9R^_F_2@%4P"."T13YA^@IU6[Z;R,:0NHR_"M&?LVN*YCZ38O/XW52Z:_K M82[2P?@J)(H="RCV.7N)OUW,SCG 9PDH?*5& MU$,9Q(6]_R4^S9J_GH>OP]-V'+\(U3%KNV']CTXH9I@>-CTB1)F7$9^_DA8( M1K>7S&?K!N*4'HF6 *)5FU:D$BDRPBMWK(S!^)ZJ43"]/0BN% JMC%DR;0]) M[W@06_MELI9X20YK$I4.=4$% MS+JLN'Y9"AQI1\4RP'V-X<-3%6.JPH!,AOUEVP.NTX)J7ZM(!YM>K]RV@D.6 M\B7#>.(WU\>-7CM=#F)DG$;A@H%!F5%M2_$4=SLGQX1I!-7=0\.1M6Y91P?8 M"@2X"OK^9M9Q8BV\!E^"W2_3.0.GH,%RWC6+%V!RM*)K40I\7@MVBI\$S,NP M,>OAKU>M&,.'?$A\ .JQ%R3(ER09*)M4+$<_7,!#XN3SXS+*4M)_=!7$;%G3 MD]A4=S+T\=N0E+FQ:3A>9!%1'_H^[@R"YT'+JR(]G!R6@(+#B!C11R10RIV+ MU?#*]<'AQ][.4LS)S"'!?")K="/MR =(Q?6]FQIEC$/)1-P" T/&\#QOX+T>@OICJ4$GF9K%;#-,:W8W;N>Z??$P@I@==N8&;RCR*A VFK(+: M.,Q#QMI9LIY(.V#'G5T05(+OQE1L_#>2JVD_'?[R#_^UG+V"MROQD?_W_SK[ M\L&31P\RZ4R:>JQ/OF8I&5F7VDQX+T=LWP; N!9V M+;J\!V[K?!'J4RX7"9UV;KJ-]/YV9;+&STX?6\]JZ])39Z>AEU7YS+#L1?.+ M=<0^FF7LPJ,@WJ[180"+L&G,"0GW\=15N!E-4^#96WB52;Z7>Q%'5I7M MW9[7U^T-LW5Q@>$81Y\;HU.<-1E5XZ+RL<\Y=/W!##G>]E[N[8U:4T6L+YXQ_;1CAL]DS.4>Y+6?V M4K^&+VV=?9S66'9E2>+1=6$->ISCEA.0(FP=7^[O')V!O$YDSHCC8]?EI#9, M/H'ZO]A"?K>ZZ$%4XMY8[TFB34TNZB7O0)M9L X77;ZR$@N'.ZQ$O\I%'IS+ MVAO^4MEX@&ZNQK,E"*CW+$8O,6BT_(NV) 0C)CPI9,- A_/'OP(++5Z42>SEY(TS8V MT,%5< NQ:<0[)Y]\D\U^@ CN*[*<\%%X5C:F9S2E]NDW].&C7_$"3=":@^_% M;R.,/^'Q_]E>DWV?/>*'X8=]3/_Q,'ZRKYSM?R]/]C :9]41V+%[,L M?_#$9-?TTJL94J(W19^0,\F-5]*.FYT&:_9=)=P_4Y:60$:X>^@=<'K9 M04OHJL[^ TE7*B;K\Q0H??V%NV]7KG*BI4V."67X-433#Q8#%^.2-PEWQC70ER5O'X<)Y"7!N *7U:67"8MG MSUJ1)-S!1 Y$J;4!-YWX>1USBQ(-7%*Y 69D,00Y)XX-ORWK_(8%AV_DE">' M'WVAT#?-\&9_U"*JBQ@)"=.LYBO*QJYP&K#H@#G?H#:L9/8B[6.\@TYM-A!;'C"8:[XJ-,\#+DZ"X:D+209$N1[=!=._FJ^)3)^ MQ/X0;UE8$\;I3+HEK#\L$S(QY81E4/IGDTR? .J%)4<@P2-#P@=C2)#0 8VG ME!SG==Y?..6>MFE>JB,H6V\B0E$M>)\M()_G.J\C""PN MK^MV(Z*M/V/5D;UX.YI"6XJPN/4#0,U:8)7N*8F%A/QXIPTCPHSD>#SU*:TGZ MDDJRQVGZ4-,DP-[+:BX6OIDI?RP8@INNPEX'RB$*J5YZ+.^>FM\?$.KK(Q#J M'CS+QP1"'6W.+[0Y%(?E:G+@,)"^-Q30X(PD4LN4)1-J+P^J[?Y^SPR&"P3R M7HG%SXMK*A)!Y([ITDA3$4]H;%!H5'X0VU1J@;:)*S=Q^+>=T"RW:.5AAE?H MCW6J%,;E1F;9Y7:,V.F4=7$0GS&XR8X8LSSJXEK_Y7BBZGKKTP#_R&XVGR 9S-YE7:/(YE_9& M2:I%L$(YIMD1])/. 5^8\U6)A7_N7Y]CZIYZ4W9Q'6_2I('* 5V7@0-;NE-F M[1H1LHA"V3J1V@O27I4"-B?7_:O,50Z68 ,MM?!BW,J5,,XO-; H-Z0-3 \[ M;;T(E["5:)19OS%9@AK8^&S4&MN5_S+A@UW1-%:,T+&&%Z.6QY Z0YD_Q,OX MYT_J8:/QPN-SV0T,8HY3.-OWEE?#WTO'!!;DXF3>:,3=A37.TZ3PQ* :6[=U M)$F)!(:XK9A0B="6\:5^0=+O$Q'DZF[T:/!#2#5_6_7=L&8J>J]:R:D7[,.? MD>2)*4MV*$3KYOEK8R[86M>C=/ ZTD]*ZF.$"G%4V9B2EBG@ MH4"-?CI=6CR(@^7UA+RTZGGS."LY*NR:MJ#R"M*G3DQ45QHP+$#D@S(9!N$E M6Y::RCD;L#0B0- &@3-67+*BCR47<3[P?&/VUGV3'#T:GF*X>+!6A[%K2UW B"; K!3V8Q("'%$& M=9VJE%Z5Y1H\51&_L!? ]E]EAN/4)MC[ZXHZ2D;B?N%("I_+@1Y7-&U.^-1Q M#7'IS&9Q!2Z=#%4E4NU5U=[\M9T.]\8RN96"Q7RSA O.(ND1*B0=A$G9M MCYY>GW2'%1N%+4%=>X.>3G>W$<+-AW9;UK*177#S9)#O6W80)73(:H..;$+8 MC"7K);/!,A/.F!4J(E!-*_279(Z4FS@+RMFV'>(2]O3KF/6 04#] M3Y-W"^\H.BNALL#-VY&XE%9"0A:#P:I:TD F?*ZG^B[]HD2=T[DCO-G;] 6. M..:P(+$G'EFRH5-4BLFZ%SG6T\/-C17#7C[RH(> M:H(!0!5&*]44>K[TAD07E4&%,%Z7@P7A08&2-KY.MINY5.O+SG(Y!5(B^P%/ M_I)E4^ZXE@_!PL%B@6BR9^=&0%XR^EQ7;Z^%'A]>/L>&1C@3>3]IS!(ZF&A* M ND]L4V4-JP:MN/MD#Z%[J+]"9*R:5K'(1(0FWH T<;$'U)"1ZBZ@QR9G*T' M886_YTE8VOQX)3H&[0E'@$Q7W$N&-FB?DQ3VK4Y=(I?I&^*"%=HFC!^$6MW% M;A* '=/+Z'3V+"RA/BRB0+:V:\VXK4NK(<8)[5D:Y%SJ@$4X2*([,06'8*E9 M8)I<0QQBZ_W5O]EMM?O7!:+IY7?8]8158;E[2XK8L1S-6(LFU#"L5S+,U^;C MB5WDGQV$H7HQ*4\75J*P]BEFS?%9=R:Y&6\B\J"1!VY!69Q NMS"$SFFO1V7 M&J]KF$-,1J1R5KN$3A5YC1P/H!X/[^D$,C0-DOBT%U36@$VUJ>%3 ?N\Q)WS/)L]AW>;/9R=H&QA2EKX M;> E9IBCC0=WX,>9,7EC?)%$[$Y0'[!F\:8A+#OP0&(\D7 MAIV7S]%UIO?-NXZ&G@+<7LBV2N15<_JBF>A%9"%0%:0I4S?RXI"."!C7 GEZ M\C52PAGY 6[%5]K,J\#<,IY;*Q!"S00A)(MV?Q6B5 MMR%<1FW-$4-A&(IOCAB*>_ L]X!,YA.=G:&Q\$\'-^* IL7B ME:'%S3G@2L8;=2[+) L4>Y8YA5J!H]0\RX [#PKQ<4@=U1J7A2\ 6"0@>1%W*$J05"E5HLI"RL$G-+ MS!'I[/HX/Y;8Y44C\"D(;F'_+<+J&BTIQ6]36@C>MFMSK;Z+XXT%91RB>AM^ M[:][2DLA&HW6"T?(*&]5^SO,!7M^.W](KRIL7(4]*'V0IJ=U8\*\61&+U:JE M@>CG 4UFV\BX:(D[3 %>>L\$M%8E,L>>8A<_#XOP$&3,P?Z7*[#Y\%H+9>(M ME(/5G@P<&$Z[-5B].SQ6\;AB9AE:Y)LT*7,>*NYI@06"-")*54NH?9]!D-7- M26/-\#*+*K-$<.E.PCS*6$U;%8:H((R#V5.#)+DH;0@>1=LDP"[#]!>'87;/ ML:HBM!L2"QOP*&DS#@8EKI-R"OE5\'F>O17+=[Z@LN39-X\>&WV6_R,735[E MW3R'97[RXFU=;O5'#Q\\>&@_&G\E4-CQ]F:;%J9+GNJ?YZ^^/?]OX39AO5XX M*.+:E9_\!/-&UV$ZO<$.<^8T[.C)%?Y>-6GB+*/CBHG7>Q2$$9S M40S:R7+)R"7W,V,V!Z_Y86#6D4+ '/.6#JU#_7$D9IIK*61 M%[!NT<@IOA"/M^"G.GU."3+L=)DE;)EFFX-AUD?(E#C>%Q=#2=(2556'BQW3 MJ]PD?*MCHYT^(G%MQX16#ITWPYP70GQ_ZY/??>'D==\JJ462 TJ375RP)*8B MRV*6F,02ZQ.O)GN81A"4[3LM:)UUI@$@VR2.*<=K,IWV3,K5C:^1B3V=O2%F^QNE'Q,H :;H.JOUGS<-YK[&]>N_AP+@W=_U M!JQDF#MF5+F7-%O?E@OALSEC(IU/R2'G\1 J4BZ8[(70\>,T;,I>,PX3!7Q9 M84,SGF>JK?$OPE2)%- OF.3*S_%GG$+E*P0]C)TZ&I1PJ&")5;U[5A&Y8'"P M*%PT=]]\_>>>/AS-:HTY$"QC8+]JT&Z9CLA2PMB(ELID8:>^-D,7C>-$[ M(E'1U.%ZF%9D5E=48)5WGO)ZQIY 5?S?/]R>WSM[>/:'>PNIY8+'*1.Q',;_ M_U/CEOXK)-)BRZ[\F[T0#-6!EFV==W>]'=B)7ADP_%?_V?>_>F_W@%IOJ&=:H69#HY? M/++J?-V7?]9_/"FJ?EWGVS]7I/UW0C]Z(A>3:@Y6,*Z1^&&1US)Y-&G\YU#< M.'W !8Y-!_^OT#O+GT_A3W\:?_[HB].OO_QF\D\/3L_>\?/'#[Y\IU_L>JBS MAZ"!__)#I[C%I2Y V97=@4M[W4 WPE&9QW>W>NS]ZKMW_= M8KO?/PTR^XH).)1,]G<[+N?P,! ?P@F-;N%+I.E:8_B%P_-1QF3O/OFDY?_Q M@'WQ+@LI/7CORPN 8T%H''3+*&ZIMQ@B"XDI,4G?^W> B.RE<'Q^=O9Y4L@_ MKM8P4.>!\/'>3^JWS +[/]I*=.\?6+8^Y1>0*_C>/_#_@\#]+V6P50[81_N^ M[>[]*\BVG]CRM[AJXWS< D+2Y?*)1#P4$*U1"Z^&,Q!?Y,G]].[&J#0\Q_\V MH.#"[&1&_Y"4W^,[G. [Q^6.QO+]CBMQK=VK@?WF+/OJ\5?O>R#?S^ ]F/T6 MEN8?T\%[3R]_O]?-V>-'I]\\YKS.AQD _-,[#<2[[^&C#3C:@*,-^,5O_?#L MJ^SQ%U]G7S[ZZKX9@G?VEJ1Z^5ORB/-^?OA-7IR9D(_Z4%^T^99_EMF:R'#[*'_[^] MZ^]-G#G"7\6B4IM4P-D8B,FK(A&2].4N(6G(*[5_&KPD[AF;VJ:%;]^=V5W_ MP 8,R6%#+)V4"S'>W?'LS.QXGF?:1S]*G;/)2EMBT96@66\>>"(ZL01(N3G+ MS7EBFU-K5:^43K79V3>>^*0=^A4R$UA$D&<2@B>6>.&>2A^3X2R@#!"32V>2 MME6;S:JL%"+9D]?WR^=KLSNYE69?*)?2!YM@;VN MO;'1Z5FWP2ZI?T3Q25M>JSLIJ7_RF,O7I?[Y:AWI>84=YSV+-LQFI&7F#"%F M^),CRYPYL06I90JJ^65!M4&1QS5%$[C2-#( )-E#5@\2H(8!< C@1?KP?* 5 M0?0L4DUSXO=MX[5J2J3:+C8D@ ,9AC<*)%H$7/>;O4[/LE+:<^.TQP3%8 !< MF36\89WKHP1SFVX4_JZI=%1P5VCPK57L$H]AT&UX"*6QW=V27HH$!$] 9$+66S&9RVO;L8>+&9W(! 'Z-$I]@ZK_32&\N9_*R@JD]KBM+6*A+Q)OH< MSEON@E1.%I]-S^([A-.("D=(Q!4](F]IA!.12Z>R2]9J\G8]WDDJ?J\K612E M,856VN+U<6R [OKOU5T+:B9G,+"-(?TH,KA2Z7ZG@:9+5M)S7?I=MW\FQX'@ M]*"Q7H'N.3)8H]*E,:7I;NZGEAQ\YABL&3%\!E9;1A? M:)"V:'"V$^D"UL+IIY]X_30EX+:F(:^$1X.1![MH3XP/9B= DKD MSFS?N+?TMXK$C!1U(TO_>FHNB5'#715*2*UT?:%T]MNZ-'!&L6FC4=A'$Z,S MZ[$32L:IT2"=M4)+F9>.A$^['DI4^+"MHW)''DQ)?"I(KQ@5-YXR=6BKESS? M3>,'2_K[8@Y_Y3*Y=QF;F01=%U$B>+[Q*@DIM2K ?&+.=,O[6V4PO$\J=&BE M>V]OO?_JIM6;^7'!V8M9S7 P0P%WJDC4=H*5DR-R;%6Z6E5KR4*(8HI==O0* MR%YBC!%S:X$L,1$:M;#3#_\>8VCGC2$#4A6#BP7^WV<<<'_Q8#.T! ?28]BN M>!3KW/B\<+V%;@=,>N'7Z;1K9#:WG!4AP>:-\>6&60#,(:9_ ?HGPT:#;F]L MQAOR$E/62X,UH_L0+YI'6!O[X+C^)I_:0,0S":Q-$HK:6BA!;+N M6B9AW/!4BC'VU3!/D286W66==Z#7WCK%Y+H?V[ZR]KXQRM75UXE1KC('%5H\ MJ&@HZ4'%SB B9<1D$$&CH>^.(SV:T@]SEJ)9=%,?-,Q:_*#)0&%MDFCK!QX& M?VQ=!SM%&E%W>9XOQ2?N\H?,R0DJ\J-X.>U(7HZ&0]U6LZHJG7W3-F+"_="0H7OC G?VL^.1U2'^9\,XZ_[G2OB?!VJ'#_8]\<$.]SW::?F> MCG(LW]-!W]/2VJ7O.2_?D[9--_D>>FW =LN-4.ZNYT0=P]#AGC#WA*'.SN,_[99;,_= MK4^B$2;O4FTR3WWM,,VB41VV<^9?@?3)CJ\%#>XPW[+V4((. ]*H]H/UVVO* M6O4P(M+-[/Q?K_9+V5S[M<\KPW;E5U6,B>OH"BQ#7GL7J,"!_?6L# L $;T!4[X2@9 MQ;8+Q9%]G'-15%6I*[FI)UMV'C7M MHO Y>G_1N4>5&W#MZ];^:?642.DPX_&Y)N*<#4&C- 1G8P@:6PU!XMUI:0A* M0R ,0:.N_/E/R]9= N!?FH-3-0>-SXH+Q@ES,,YJ#K!,4=&P?62_'A@!16W) MNPQ%1VZ7AJ*(AJ)1&HHS,Q2?%3>4AJ(T% %SD*Q(@^'H*%9"O#@MS.('F/^5 M_GGS\B -;,]'!/"M,UG@F^,:;@A3?&Z(SP.@K3Z?$]WEK8E9\T^==1\U=%]G M77)%UV0H#.[4BGHL1>WW M'DI%W4-1^[HU$146#Z;]E@3VVWM[>W9=ZNX?>WD*-D%FJ;)K,-@#[0DI&89"248#LGVD#Q"&\5A1%@>W0 M?5^?O,.57HKB9R8;/'W#,>?P1I1T%5= [L@ROP\"5Z:8MX: M7HI@ZFU,$%BU<&W3>T<. @-0/I:%:;TQ0&;H0Q/0(5[C#^D\0Q3Q RAKOG#G MCDK5Z.IQ<>O\BE7 8!$::@#79+CP.9G@ MFP_+6K%9('P"UT8'I@^U -B'U!KQP@ B&I\#B.C\,D!$<3$/N<\E3PK=O/J' M,_ZUP=^'O=<_7NY&F;UHD?%ZZ[P]+D%*( RX,KL/]D5FE6T?:7H,Z"*.KYN M19@&A"ZA-MT7"%@J"T;BPSP =0M3@65%'6,7X)U=L@#F7+QA"*6MBE==?>YL M[AV/*@7^6I5&/HZ&P' M8F2]4Y/^H?$IF([4HU:[X,B'A"W!H]8__N@]_&M4E0;#?I93O=(L_+'^)&$I MZ0_G9G6]1P*@6"M*/]E_\[Y)WY^>I,>!]&/PF*9PQU&N@[K&%$Z:0"QR+46Y MK/*2YRE)#6E2KC>5B94RS"+#B[E+#\GFG,IM&D@0\@;0.P"X,9"@$05ZN4?. M[.LA\M7-!]!O8\=8T1_O_LSJ_A]02P,$% @ J(AE672 5TTW:<.1!Y)V%"$"H"VU5^_ $B*E" *("VUZE)YB4R>&\YW<#D' M(/GAG\^3$#T"XX1&9ZW.0;N%(/)I0*+16>OKPY7WOO7/CZ]>??B;Y_UR?G># M+JD?3R 2Z((!%A"@)R+&2(P!?:/L.WG$J!]B,:1LXGD?-=L%G=^H.W/@S!]^!H./". QAZ>/#NV!OX[XX&;X*WQR=OVS^,3KO0.>ZT MVUUO@/$;[_@=EK]..K[7[>)NUW]_? (8M-!G?LK],4PPDDV+^.DS/VN-A9B> M'AX^/3T=/!T=4#8Z[+;;G<-?/M_<:])62AN2Z/L"]?. A1G]T:&Z/< <,O+? MPMFB\-]B+"\=^'1RJ!K;/CEJ9[1*$EDCFT1/U3W ME:*VU^YXW8[!:N?L>NTC[TAR8B$8&<0"KB1TES#$<2C.6G&D6D2&! (9%R$H MY!<("K<%9B,07_ $^!3[8/7+QU<(*;#(9$J90)'!.,1\H WF3&BV%DJ O:$^ M%CI>%267I+IM!OTAA(*KOSSUU\$S#UJ'[EIC[HTPGE;27.1)M*=7JEBP+C96 MF;&21?WE97R>NN1UNA+IVC;DL5_-AHSOA3:L#/R&2EG M)3.T( [^P8@^'OHTC@2;N<3F*I;LCRI1N2 L %)%=T:N?M36"7Y016=&KGZL MT(FCB K-KZZDUZ93$@UI4J%[FL7O'0RSD=R8)=(YI7-R8,R$2H.SUI%PF79)2LPAN(T^ZM_+'3IE3DG6,"ZYQ)EOL0>M9$LO9JY; MZ] H@$@RRQ^6,01!J\*> 6A5I1[-9!$;U>T/*/IJ,Z=R"GPULY M-&L;7](52P1:T3QR0S,7C^@0Y0KV..9NOZ 3V<*QI"&/CYN@1#HE%?.M.7.9 ;V"_48<7]G4I,"/=#RF,&ZH]D4BN-@D.KR,NF$[V'&&V";'B M^'X91R41:9$*KKE05)#:()!DB,83985DE\M_MF(MBFMU>$+DOJM<)L/K_>-G_!6EZ8EB0UR!8S+13 MY2GJHMJ'"=1*1BYCM)%N,%41:(7MS3)LJY+7),M1-SRM A5U- C*9)WY@)]= M>U21P0K%6W.>T,M:S=X@+]_#2(T:,N9^!#IB>#HF?H\!OH[4<;HJ'<5!D!45 MHQ*02M5](I>+E&!4D-P@P.3B)0G5/K#[,6:.E763S0J&DQ:>M8)VDBBD;EHPIF M9B^6="*7J=Z]^C/G:4.::K=,/F?FI,><:BN;A+_]1JL$5"KH.(EAT_U MOISZ45"\#P(3HKS&"7[,=%\AT==(3F4A^1T"5=#H4ZZ-V6AHU-%K#1BC;N,6 M,,52Z]P:1"*4VX.406ANT3Z2UB JQE @_8S9=^DK.?/FOMU*(+FKM<:144NJ M'$?J=1F+3+E!Q2#;QY$!Z!?,U%,^C[#)*#&$6F/ J$RYQ_ Y^.(C4?7T?S!U.* M#QYN-'FIJ-,:.D8QSS&A2>Q N2&2H/#HSL*#D8T,'L?=/W691MD90)F8C"JN M1#:@QQHD1O&PVM:C/IR8:D]RH$3_/B[*\H@YU^^Z4KM/O=N+ZVV$AX,Z M:Y2\[#F2Q4%E;D6RYZ;L:&2TE.P_EURN%!GU1-NBX*3*XRJV#?$]X)G[Z^4? MKL*LH!IES_6@-CO?L)Y#J =F=;%66(U:IMM!ASW %B0^/4_!E[->@; 7AG

%T&XV9%KK0IKJ!A5@&,Z05 MHU3S/@Y6@72!IT0DNU 7E M!;P?22=&<^")F+#GI\H5&?O+'9L/D)198HZCF M"5"US3NW"BFSD* H,2SG^@&EMNG%^@3;.IE1BZ"K' :A?"2 \5-3WY6.#M;9?4FE GR MNS9078LXD.@J%M*?>YB]NC^.<\*U9O_?02 M!5:DC1)L]>?'FKX>JX"/?C;(N)J1W^J7<_">+UTII6PK2&H980TDHT!;)Y"T M::MNS?E0:A_*#-R'G 7M[$SJ'7#!B*_?YBT)OTICMAYI%71; ^SEKUA;/!J; MVY1&EK)J'U95H5U].ZV>;#VPG+1;0\LH^;XPM$JILJ+2/KC6P^N/(8A#4 /' M-&;^6!+T1@R@>F*S<:W68#+?=%Z:2Y*2DZB#V2+OIL.AM@&V ML.D8Q6OWL,G.$BC*=>=H!S-#4!/CS'@!QSGFZK63P24)8[DJ-^Y7"J+:TJT1 M8E2S5[[_PT-:H<8_55GRHI ]] QZD2"!\I(<=#>,NY-H*^A&0;0$=*7-R]0U M$O /AXN?OD[^7O@\MOHX-B3[@#H1%) S5D_-G+<%B]0GA 0O) MZ51S/^AO_ 9Q\@!D"_%8*B^L4[IR)3X^".&^ <('WH--V; MY+TH2)Y@A72OTN:%BE)VI?%JC[QGO--&7KF$@*,G7(-3W( MDIR@?*#S9X_U.ZGLSMJRUIUQ;GIP\UOA^*G^V@;G4IL^(Y1^X)>[.JZ^Q%UQ MBAX?\XJ#7,?*A>K$L?UNS+O25!FV0$;1IV=?/[8\/\GWUEO.@V)#L3U#2PEW\W&2(_/)SFY MY&;SS.L^'OP7?#DJR1_SU^!7;'H]X7\Q1WVAHA]B7[^ M@C\6%37BJ7O!,N MN@2Y+/))>M1M&H+Z(1NS>"35#^- KA^6CK 6:4H'Q\TIJ.*OY-X@F77D#1@0 M46G=.J&1S%?8S&7E*DV=2+N";Y1]'U)FBYUR^IV("..<,LU[>A&0]8VL*F4G MFKYJN9R]X'+V0,^ACTG0&\KN_1_ [(K&K-+*VR;*[@,2<>E68<2WSR#87H _ MC*';[G23+1R9.\F;,HF2HYHE!NQ\.X&Z-K/;^329AG0&H%/C?K:6C[+ M2=(#B;JN-AC,4W:;&J MK'Z=TNB!D=$(RI<*+Y:[0^XYM^-];HPDZ='+T8C!" NX5MTEXL379;1>ZK32 M3&S;:K=5&%?:1B[#VC/X>E]%CK@R>V0=RSQ61KX3T]FR==UJC>GN=&..JC7F M:*<;1M9_RSI]_5)O:"0!\2P&$O%F/*U/Y? M\K[/SOJM^6J2=K4BI,-X\:B9);U>Q[$34T9I>N=4/'!CWHF&_@3#(8-9_^!? M./J^OEDK2;?7"/[\4M$NV#W3Y1^)O\F$TO@ M+%'M@N7G+/:A3SG,UMMNTOVAUNN#8]P?PP1_?/4_4$L#!!0 ( *B(95G) M-RO;$B( '=5 0 5 <6QY&ULY7U9$J.VS7])TG!I:$Q-L4J>;BY?[Z29#:1SX63\RW/^$WO^#,=IDH?CXU^>__'Y M#;CG__&WO_SEK_\+X+]^_?CNV:M)6ISB>/[LY13#'/.SK\/YR;/Y"3[[QV3Z MS^&7\.S#*,S+9'H*\+?E/WLY.?L^'1Z?S)\))M3%VR[^.OTY19.P8 *4)8+* M6"!$JR F*Z/.1GG#_L_QSP*YXHP)B"%H4#;03YXG$"((D9SR&'#YH:/A^)\_ MUR\QS/ 9#6\\6_[ZR_.3^?SLYQOQ",R1<7[WY^_O9O M=][_52[?S;WW+Y9_O7SK;+CNC?2Q_,5__?;N4SK!TP##\6P>QJD^8#;\>;9\ M\=TDA?E2ZC_$]>S>=]3?X.)M4%\"+D#RG[[-\O.__>79LY4XII,1?L3RK'[_ MX^/;&X_\UR*,OL]^2I/3%_7/+UY.QAG',\STPVPR&N:JYE_#J.+_=((XG]$H MEI\Z_WZ&OSR?#4_/1GCQVLD4RR_/_T6?"%7=S$M6L?SO#3[UQ17>%$9I,5J* MYQW]?O[9%5Y3Z/AMCO0O5I*Z>/9HDFZ\:53U-)E>_,M1B#A:OCI8S. XA+/! MT6Q&'_UR,9W2Q!AH[8/VSH'ABOC,A 8G9*8OGOFDB=I_J&)\@:/Y[.*5I6"70ET+8"7'W4?S,LQ.CL:Y?GO]KP5-U1%]Z.QH M_C),I]_)+/S?,%K@0%KAN-4&K!$95/(,?"X.(I"F68ICL$NSG9SM_Q8K8X/5U^)@SG>'KQ[\MT M(F([*9%&@Q&A! ME2PA2JTA:<6"B5A,P-:F\ $\FY!!/CDR--- ,TZ\PCC_A&DQ'6/2[ 5X$U:I)\>JP^FP&>T^3/$L#//K;V, MB@&,0$4&DD>()M*7;+Q//B596D?KUQ[?<"07$HW":69,!!LH%%#*! A>45JH M#;-)A>(LZVY 6Q#Z4%'XKMJ^3><]9=V,O#093,*>X3TB>: MK26#CYE 46CH8O&>9=]8]_>CZ5/HW8H#C63?C@MG.*7QCX_?89CA!;#OUV 5 MSK*3BH,H28"B7 !<3(S&+31:R0J+LC4E?@2J3W%X,V8TU40S@KR+:N.Z>EQG,HY35;36SDE'(3"7ED)4AQ0"!Y, M9': MTHN87/.I<2^IBU9)W#)TNR4//#,(^.N M=1IY;];0F\BJ/0=V%7DSG:\9#TM8E/,,@LN><*1 .%*D8"\$GYPF+U\:J_Y' M]JXW$51[!NRI@"XF_\O+> ZCL(&LCDB$PPH'SD4&R1>&S$=#5NC B7:S!.)B MC"YEK9GC$%#3I#.*#*W##$$8))TBYZGU6NS#B'KJ_G;AQ(89Q"ZJ.$SZ<($L M2K"XV8L*_HV]%@N>DST%9C(5\% M1B0#RFL#L=3E\Z*8ED8';5NO3Z^>O/_6XH2\\_S[AU$8SRG*K:'H61,\Y=Y\!PIAN/9)(;!QV@Z+8-Z"%V? J0&1.E(+0VK8@K2 MX_/;<:)X[7/XMAISI;$KKA1?*#83FO 41 B6TQ?E>/0A>MT\-KH?39^"HP:T M:"3V9C1X.YZ'\?&0//(ED,MJFK]/)OGK<#0:&.*D<$$ CTAV34B*U1*7(%R) MR4OI17-";(*K3]%2 VHT5T4SDEP^'2V/(=+C CT+5.#DVWBT8+..D3DFN6OM M0+91]F&+DO92]DXB;1P 7Y;'19=M5!2#\VIXN- 4@W,.]&CA404M9.NEPZWK MSWNPCU0R>O1Z60Z'_Y//9+90C*];/5F#TYZ!B#Q*0<&U\JT-VUH@FU#)/1TJ[2_LCBK./E;Y MO2]_S%81U""K5 QY4\K")8)BLJXY&P.,B>R<$)2@-R] ? C0)CSP3X@'S83? MY0ZY**P$06XW"T>\=+XZ8/+'+'*CB:%U)__ .^0['298Y8W+CUZ=K^-%%)\M M ZE)?TH7!\X6 5@H52R&Q6@Z.#QP&T:?UO?VU/Z:$P-[";WAON?IZ61\#87W M*-'2C JHZF9:X!!L"E"$,H9CYC*VW^.\B:%/RW6-];Z7N!NNZ\[#<(SY=9B. MR<;.*!A;G%898WZ%99B&M2!3YE D 4F5C"(*"#IX2%DSSE(F9*TMP(]1]6G! MKC$Q&JNDY;;F!8YE;$8$/IOB"8YGPR^X6FEH2*0DM2FE0 MR0AP,@32-KE^U)8+T7SC:SN(?5K::TRB+I75CE&9$CL231A]"$-* %^&L^$\ MC :12^6E<&"QEIDKY2 H9@"#I[0NF!KAC00_BTF_/7%;3&] MH]\;=F3Y-*>OR_+H23G/"^BO-]'LT9KEGH_OJ$?+)H-IU*SE:L*_(5JMZLH7 MY%NN'OLKELD4+_>+! MD1LJE()BWHP/#&@^1E! MVJPN]:PH_::>48:V^0FEO,3Y8/LCBW\7C!]RL[Z2JDVFFQ'+)Q?XW9BP5MC&7 1R=?7IP=+ MX\P:T0;M3/&M ZT; /:O*SA7YKE,?\4Q94CS@8F9E$2CB;'VS4->2,B>O2F V]_R[3]@M)N"9 JX^]E+GT121;=XMR];E:<(A)1UG033((Q7@0?K%A M1+TRJ)WPHZ%&VE4*3LG6?YA.:L2!/A6+TH"P+((*7H)7!J%2U_&(B>+VUL6" M5X_??\]M-G]?/N(7'"]PH*6VAJL"QEA/>I(((14)6J#-$0NQHO5"P0T O0I6 M=U7RW7VV747<<)-M^?"+Z.3V*<:K2JC9#.G_7!?D48>L;:A]3PIEAY(F;J0\ ME*RQ#=*);#&V3LUV@-DG^]>*,%UKJWU9TK4X6@DL15<#+#0!<25 9,9!0=0V M%9'=;1"] M,H_[*O_>I<^=1-Z-:Y>*&YDH$Q2U>5A1#)P7&;S-B8=<-+K67+[7M3^N:6NM M[%VEW-YT7;*M1!]16P6Z6/JR0'"LJE6@HIZZG-I)*-/7H)R-+2L[5[?O6 M7=8>!-1+D]>$%^WTT,[3X9A&.")$1_ET.![.YG6\7RXS:^4-VI0YQ)@E*$W1 M*[UBP#%MF'1,)-L\L7T84I]J[MK2HZ4N'K,F9DV55R?%,>N>Q@*:U8-ER9+39T6#E.2O>6U(W?Q0>5,JMI78[?.VUT[BYO]> MK';YKBJ^32&-.PIZ2;O+ANP07;(0G!:4^*-TH9.]M ;8^^0G#LG@;:9\9UPX MR-RO;8S>C"9?_Q/S,?X]#,?+(=63X1\QC<)L-BS#U4VB%+-7"8>+4^&&U19O MA87:!H%[B*ID,J+9H\J)J]@ZH6X_BCXYJ[ZR^P#\>-0\[GQXW1QMN/KT0^1L MZX?2*%.KM_[1 SY,)U^&]&F_?O]C5CM)7*X.'"5*XU>]U!W9LJ T G&RMLW# M#-YS#BDQGIF2Q:C0/KG9$%V#$LAI/1[_"E??WXX?;)<[*$P4O^P2HUVB>1D, M^%08I%AR"D7E$-J76&T%L4\^OB.6K:EC[$R)S;SVZN39533QYLOOPS_&A'=4 M&[ME=.R_(/@2Q.M!9 MR^+M6Z2_V\WYXAK%JU8@U^\DXLXHBP6$KC< "U]+SC,'(R+CGI+FJ%JW5=X7 M;W!],#2E E1:G ELWKI*R5-&B7$@M+D"E.W+M/Z(:@^ M'6M_3'KMK*@.^7-^/^Q%@]:U]\0.HE8%M4E@PK(#.B5,9'YM[? <1. A%=M] M=+8)TBV/Q_\IG.D!='H ^W5U@M"!5M/-T::%"0,RX672/])T3I4 MVP37EOTZ_Z3F@"7S4 70KL?7DUG*W(31#)AIX.%Z>SJ^-( MA-6;&+3(H)DAH@LRF<$X"S$*$WFNZ]*M=RAV0[IEY\T_A:DZ@$[;]6L\"5/\ M-2Q7*4^K;%D.54==>C,/#!9Y V4K!8#PI@ZU8*ZY'TJ6/G@>C3 M0"7-Z+$_V8R?359Q'E9C"[\[D SQS2-!3S6 \ Q9G Y,LB>/')6GC*' MUK'X0W@V6A9E?RZN---/PVCH;(IIN)01_3S"\YVFZ[9PP.K!,F,*2"R$+&0+ MGGPM9"MD$E8[$5IO.&R":R,&_ 1M$'((;NVN@7>==&N:MBYON7.QT\X5K[_R T^$DW\T'%V?=FF?/CWW5?]C M6$^)-%X3*",P6M;F7P*""QIRT9X;+XUHOJ:]J_7<8=4C?%\NR7V>'"7BRA17 M)V;K%L-5I@3$[,!L,,:YV1; 2L5[T8.J+4G760 MYAIKN826*.M:-N!;WO15#V#/*Z3O[\M:F!%Y9/7. H&I^SF5S=%O&&'].,]9&=X\1OT:' 7V,0*&*JNWT,KC"#"B5A<^A")2M M5U)VC5_WM.GU[HGW9\MFJJ^_X30-Z:D4OPEM=6(@M!F[ZVHYC;Z(RZOH?D\^1R^U4+V>H4)#;Z>2UN_"<@\ M,XZE"%8$,B[%.3(N%,'HY+B0HF39_$+-7;$^A6KRYG0[A%Y;L[#>([ML#'U, MO]2S2B2AZ?EII_/S%.OD)%4J#$T M)HF3G;DYXJV(&CVD',BWR0Z"AYV _P4 MXHF.^'@ #35_)GJUTE4G*??;V6Q1;\N^!8LGBM,+!XVG['UMN-=1&QY@O,5Q[WB7$6E(YFLP64QRXPJ76 MF"B.ET0405P,)4HP/L08$LLRM;Z-9$-H^UHSLJXTY<\I^\7!U]G5[Y[ MC3@2JVN=%$MJK6KM%PLT/[4 6R^><4I8G9N+8P>,.01I]/OY/Q68Y=%\A2Y .9-;9B!"IPH!71)Y/H\2SRWKG[=!%FXCOF(TJY$P.Z'&+@(-%@!42SHG57>J:\:NWR9C_+[:UOV:>A_[&4YO3R?DEGR\U>#XRL$;B++>%EL$A>0NF"1;M[9[ M&%&?5G(ZIU=#Y71OZUY.IF>3:9CC*XSSZQ+(C#,>BZWM[SRH4.\Q-J(&B4C9 MGA/)A,Z6#S8%N>6Q_Z=-JVY5^'A+A759-8QOUZ%VMUCX\/,Z7R[<8KB-%@PK M+:Z%Z[=ZO9X?:ZLTFLVO[BM;-5RZN.!SV2WS:#2:?*T+TG7W;-DB8'4;KU,J MB'KWI\X4NZ'4$ -&D#%J#)HA%ZU3M6Y'M/=BR2T\M]"FM#A=+'?#ES73Y6M<3-P'>I^66'C'_SD+- MP4G2KD/'CM!K[\ KZ,BT*(X[ LSJHC$FB#IR$-HY@:8PAJWKP9H [U45SY^0 MX+NSI.&)_8>D>I\@!YJEP(NSD .%\XHG!\Y[$IDO,IL2?/"MK[K8#6F?EIYZ MS. #T.#QHNY/53_3[Y-R-<+A^*:;^3"9#9>UH=W%XKN@Z#Q"WULT!XG;UP.Z M9E=7%W]Z%A0Z77E(7WRN%6O%0"I<1NNLL/*PP?E&L+LUX*O*O\5D,5L/YAW. M9I\I1^/B-WKGR>R.3#'DR&H!8*J7H#)?CT\Q!]P;%"+8>ACQH#+=;/96 M.!W\80W,G@/JT\;NTYX,+9ESH,FP?B"#S(S)WE'JP8,A00I9SR(P*!3JE>0" MR;!UW^Y=4&3LB@(D"^B4UY:8V6O+\-3]XE:\[7;N M;T6&GGB^V\Y\P(M(BL< 6DE7[Z<2$)WVM:&R#QM:<]5%+1[,$N:GM/5@&9QR"93X9 MS-EGUWH/_VEMS5W7@,^%'.QF'(TUG6W8/#J$"/Q_# M9QRO&0(*:4.5HRLD1Q6- .?J-0%62X'DH(OO>FMZKP$\G3CHZ?"^*6D.SOO: MDF"RF'\BX8[PHH?1JS"_J8"!EDD(IP(HA93%Q"3 .Y)FBEXQ@]*ETOJ<==L1 M_!OM_!V"^1W0YK$WL3.R(!36P\M24HI5CS'+HH&Y*.NEQSRXPZ[:;+:)W:UI M&([)K5>;=JVV$IU%CAHDUE,NGHCF(K. VCMA0C$N/E;LMQ[QTPGVFG!SGRF] MI[K[X[VN\%MGO<28H-B<0+'BP 6;0<>$(6A1C&Z=";9#_W3BM4>G;D,:/$[R ML29_NH(O@Y(\H8$:,X+*=-4O812:OF*3?;37R>AO$L MI/K8BYO-K]6>*D1E(P-+X3ME$#I!-(F#-SKGZ S/K/5^SQ;P]K7*YZ<;3\^F M>(+C&S4CZ%"]WQ=K;1KH'G&@6=5Q(YOWX%O*K0[[7;-/OD_DK MG-&[:GG*T>P_,1^3 [SVAD%!JQQG!8RLA31*9'",OO@@M>7U"L+F_?T;#Z%/ M8?2A&/V8+.@P^+A62_70G*TO3\85>#UQN+RX8Y^ H\%3]P\R6@^]46#Q$)8+ M0_BA+@K2=)O/I\.X6&XS?YY\"-/:O5PP;S.3&G)RA6+K>M>M30@F VZO[1PY) MU&WBBY8J;Q9$4*XR"K/9L S34K:U+>?1) U77F2^NBSITE.ME5=T+&?&$R"C MG%4%$EK4+I*\I%7999U3Z[AA?]2].N3XF(P], &:$?=]&JY0W1[ [&&P3(00 M(^=@BXBU$9.'VO8?7 G9)\O$?PNMN#]H]7&PRP48AZ[]4Y]-R!)T-4^UA!1$K4E4&R4LAK46O01$&1 M"[9V4P_A:=#P?/UGT\^KM4E\5R\V_%BMP_ORQPQ7G3.74^9:BG'],O#;=X G M$07C-&&#K=V]L60R[!)!"I8*T]G0_#J4R-H-JT_K7LT8NZ;->J_HT;+1__J! M+;LL#'ST267CP#->BP]E@&!L H&N%!DTT\U[]3R,J$]K4H=GV_9*:;4WYU.!G<@[)7BY$-2;6F76:7^FO9F?4^G*OP M0+KD)6<<."L:%-,6@B?;:U62)C+'3/,6+C_"U*>H[7$HM+UJFA%FS2@O*[;^ M/IGDK\/1:! C)1_50V=5NZIK;6KU>P1,(C'-K%>^=6ZZ":[]QYZQW*^5NW(H MC"N;G '!C:BQM04GM(:L<[:<=->^3'M;C'U*N)MSZ_:4ZE2!A[#)U:9$5WO* M)0O1! 1E,9&?"!ZT"YF&C\ZKUF=TZAALHY;);R^ML9IELQ1WUM M/,/A^,UBOICB:C^I<<*R_7,[R5WV'/YATAAI?3+))K!2$S&S)1[I( !]LL4P MRL%3ZPKSQTMC[BJBEEI_IG'A("E=NU4BS4NLC5$&\7)3X2WS[B:1A26#-]7]X,9Z2_BGU0;(Z:2P/& MN7IJ7 6(WM?;I>A'RY+(J?5EW U@]^P.L7YP<7\%=YBD+/>X9[_1@$X7IT?C M,?UY^=+%-?9[Y"&;?O3^J<9.@VB43=2V<(CG1]?&Q\OG7MY M>& %&66EC%%^2EDO\X9E#%IYV7H];E-L^QJ\!Y_SQS@3Z^NY/\ROOR5ZZ^H4 MX$!$S'7D@()K4"%[B(E;P%Q22MKI]B9N)Z!]RBXZ8=MM\]:].ML5N:X'.0A2 M4=83+-AZ:D@)8R#6FDJ+9.FY+K4 IW41ZWHH?%BIY?(C7C%:%(A+^*=W>Q7/61W]9NB2$+N"0 M>U#)<8H^K82 63 K,)7F%TCLCO9).L!M>+>5 VRGV&9><%.A+!L:31;306W% MS=$P$DE$\M7"$%Y!&8B3BGOFA.*MUS:VQ?@D_6;GI-M5B7M3K?JZAR%^GOQ* MOF>8E^U;+D':R#D%#"0"3_IPD@IY^I8P7I2K2>/Q5:OM"S3!AF@]\%B+3BE<)(H3S(*.HL9@M'"M3_IN#;)/"U^]LU;;J_'@ M;+NS48%9,X:QEC:CH&Q%%?!*,+#1%%MX*C&[1R+=+CM/^M^1>WLI]7$,WM?) M(.EB9,P>3#86%%<>O-8>T$M3[TGR1;?>^=P2XB:$,_^.A-M%A1TN=?R.\]4A MY \X_702IOAKF U3&.=7P]%BCOG.W_=8[-_Y6?LOA+099J-UD7\L28_YZ N1 MY1A_7YS&FB&>0UD^?O9^,9_-"1]1:8"HD@G$$I]3/2*("F)F"J2(+CMF$^K6 MAVZWA+BO_;OG<7>>L]3: N99DF2BD22[UIG&WJ#[M$YR2$(>5MN')>G+ M,!J]/UMV\#@:YW^$Z314P"[9()5!"$JJ6M=7_ U!+ P04 " "HB&59V/:# M4 ) #*^ ( %0 '%L>7,M,C R-# Y,S!?9&5F+GAM;.U]6W-;.9+F^_R* MVMK7S2[<+QW3,Z%RV36>==D.V]4]^Z3 )6%QBB+=).6RYM=O@J3NI,0+#DE) MCG#($D7Q?,C\ &0F$IG_^N_?3OL_?,71N#<<_.U'_A?VXP\X2,/<&WS^VX^_ M?WH%[L=__[=_^9=__5\ __7SAS<__#),9Z_SR>0'P82Z>-O%;T=_3=$D+)@ M98F@,A8(T2J(RL/_S^:\"N>*,"8@A:% VT'>>)Q B")&<\AAP^J'] MWN"/O]8O,8SQ!QK>8#S]\6\_GDPF7_[ZTT]__OGG7[[%4?\OP]'GGP1C\J>+ M=_\X?_NW.^__4T[?S;WW/TU_>_G6<6_1&^EC^4__]=N;C^D$3P/T!N-)&*2K M!]#C\^3R#Z^CT3_-?DEO'??^.I[^_9MA"I.I@AX9Y,(HC89]_(#EA_FWOW]X?1=I;S#Y*?=.?YJ_YZ?0[Q/B MZ2=,SK_@WWX<]TZ_]/'BM9,1EJ7H+X9<0>D*YW_73_MI:TPG!&24SB("O8J# M2O&&&!=]^O:8+S\+:"*$L_ZD(>*[G]T4[_ T]%H*^,Y'-T [_2 XQ=.(HY90 M;WSN-9P7(&\CK!_YS[/0/Q__)0U/?YJ">S$<9!HP9OIF/.SWPC_I$5 77N8EFV+=Y#'71D34Z0UZ=35Z M0S_.GU7Q=SLV_#9!^HC92G6!I3],-][4K^OD\%*Q_1"Q/WWU^&P,GT/X:/^*D* M^R?L3\87KTS%/Q7].1A-M7G9-A,C#--$>@??QB.B,5D3-&O MINO$7U-_2-3_VX^3T1E>O3@<3(C5+_O3!]+LQ<_UFV9,F,VB%\/3+\-!G6-' MWWKC8Z=5U(QGL)X74"YE<"5F0*M(4IE9$WA7Q%@$J"%/[MGM[^'-!HI>QIFM M!;Z(0ENRX1:F7Z;[U$J@CF_9'XW8L!!00Q8LM9_NX<#VBAMV)?6=42)(H;S' M#,1V6C5UX>#16G"A"^]2>C/P649,6$0P(UEH! -A)P->&5RD3[Z(FQCM=\+ MZ"E0H)W$.YCY1RF=G9[UJ_/U;G*"HSKP$9[49?(KOAZ0NX9SH#)ATM)JD,X) M4*D@!"XU1*=CUIYC,JT-Q97!/0F:=**)NY01VU+F TYHK)A?AM&@-_@\GJ,2 M/!M>P[0Y!T,6LY)D,:L$UC*C%+/:FMR8'XN1/ 4R-)#Q7!ND.;#L-]_-1S]&4;Y6"0>/'1228RV3(,322_R)-!$]$" MXZB4#-(%U(TI< / T];^YK+NP(Y89M]6; 3T7?D4OKT?CJ;2GTQ&O7@VJ4'9 M3\/WM)(-)L>.^:@B2X"9O&?%R!:*Q9,@N,RI>)95;NVE;@GY:9-KE_J\2T?5 M9#]Z/1Z?8?[E;$0;Y'L<]89YMF].?_GN2\4^?OD-1ZDWQGSL8T$?-(+DF;QV M+C(XLN?!.&DSQBAI>^UBOUH+Y=,F7<=:N\LSW1'/_A[Z9[@8,,O%DE-?(*E2 M/7U)$R-P\OQT1*="2E&W/[5=$^2S9%DCG=TEF6E"L@_XY6R43D@V"^;&L1+& M>1HX!,TS*$^6?[3D RCTI#XKK$??!:ON1?4,:-1.*W=Y8[ODS93MQX9;GY,- M$+R3!*L"S%P# ;<%G2M.+\B6ZHPV4U#/ES7KZ^0N:=RFI*DY9/=OP!]P3(9> MFN9TT=N.JBS^3J_1 AF4*Y$7#J@Y>9VJAD13(-TEG WW M Z;AYYE:9SZ0%$(PFDE0K*]3*IEJM]*\TD8HG[3)N?4)MH\/BA&+*#\ M]@<*=T[<"QD8P6N$;.B+J,ID8;E56\0!JD7^J\' MY#Q/[SF/C\9CG(Q)IF]Z(?;Z]# <_U+SM?KC36[?;?&TK2_AM1IIH[MXEW!^ MZ8WK#:FS$4XA'%TA.'\[G/Q&"Q3]*A]-+O_@S54RE91DO ='FYP@2KI"AGU6 M"$QR9S4W15C1F)(-8&\[-Q= >%=6!#&[\$1NN#(R*- \UFQ%++1FTC*E.<\^ ML4@.4>NIO#7H7=TIW#4O;V^8N]7NH=Q;O!S"S^>7W_Y'#T>$[.3\#7[%_O0R M3I%HN2#3EB5=DYB$A^!\@HA<*^NBU[;U;=W5D.WK)N..V;*,J^VTUD$*XB6T MN0RFV]U=O/-,[E7 =G0[:C*EK0(O ML@97;)$\Y9K=__2X]< US(.CUCI:ZI)2KP=?R+&;2H#/[X8$S)Y91JB,KT?! MWD"PM&/XHED.HF2F6KN8]\#9?02C0T4NH\R66NC@?L4B:.+BVICS/-?KIEPH M0?BB G+?7049!&.,<]^9A7\7SG,CR"9:Z'(%^?G\FAA>C?"?9SA(Y]/E-"83 M@M$*3 F,7!6DH1M;@$=34)3D%+:^C+$"K&=O3C?15P?7.!;-JTN \]FT"L0= M6M"WX.W=;FZCVA4LFQ9ZV9&I?!MJ*28SC@&DQ@BJAO>=-!H,.LFC\[V611V*1P%>6@05:I)'4 Z8M;0()\OH MY5WX5+=P'8;ILY5"5W&BMM%&!Z;Q;\,!GO\61G_@Y-79((^/)B_":'1.^&:' MAIHE'@KMTF3 UUO86H/W3I$DDE:(2G+?FBP/0-HC3_84Z&ZIHPXH5(OYU&L> M]:R:+,@[Z+PP6='(92033WG/P%O'@2>'UG)R'&+K>Q7W(WI^!&JHH0XVK=\_ M_CK\BJ-!71Z//M/:V\/QQ[I*3D]6;X-E+B+3+D+.7!+8*,'%4B!IFTO4EJOF M 9VU #X_=G6GOR[,DVLR.E9H(L\[1F[VJ5VP#_\V/H MWK3?00F I6.Y@5'PX'SF]1"S"DM(B.@L!!.STYEYF\VN&/J=>2VUU<%]_U?# M$?8^#UZ"PV91 ?*6]JE5$S@ MBG,Y!1F,:>UD+T?S>#.'UF+%[:.0-MKIX!CDJA#-8HR+7[UHG[$"]HXRB;;! MO9\4HU8E:GIS?X_&YA!/,3?>1X\:_F62[9D.**NQ:>L81!E2I"9D&0_,I%SZWH4A\_4ARZT'#I1UU%J M1_UYKYFCM*&\'J3^6<9:ZMXED34B8$SR&MZ@@'OHH64N$11 AD/'2>E MKX%V]W;@_EARO\?1E8H[<5JOY:'>L5V#*\I[A:"M)%L9-8*O7>=LY)%);D1) M[?EW#Z!G3;%6BNJB$?&B/-2+'LE*^7K\!KP>R"G'"CA9 A#=!<=D>5:M+Z3? M ^<9,ZB5DCKP.A;=S5C(N7D\GPXM^&,\/-7CB6IH(F 4!*Q58*AZ\MBDGISC]ZRH_XS:8 M9QH/::*;+DDS*ZAZ,?AW@\LKTC^'<6_\^V 8QS0)JR"FE6-J86.:"?W>-$1X M?53S&;?*N+HNJ]%X3'NOQ;$-=981\A#TWF41AM;C\XG\_EH?F_&:4T^F P3C M$6PJJD1)*[_I+-?M4?!Y]0(ACX'.ZZB[B^C*0J^:6U%XR0)D4I*L&6W!*1>! M9<%*=$$[V3I=_4!B(H>AYP7I;-LIJ8/0Q\>3X6CR"4>GKP=?<=[2X*+.FR=; M%&EP6>G:(,$E\/4FKF8J**:5S,VK[2U'\YU#+=75P1(TO;SX9CCXO!@=UVA\ M+ *$2P@JHH.H<@"M(G/6%LYY/:V/W81R6"4A$T-^2JI:3!^11!>AYJD4PEDVQ,RFY']#BO@6US;^& &-+! M[GQ[/+=&F]+9Z=FT;>"O(T+[^V"$H5^'^RNI[F-LWK#C8!_OS8O'M]=W$.LN$@ZH2[&H021JE"6YF7U9SA MU9P)WH%A@4P9YIDIAT+:&\"_D[9[?>_GIV%T/BQ7Y.X-;JZJ[X?C*88.ZP9L@J+K M:@);2^: :@P4AL1KJX#%NATJ2:QFEAQO$X+0/NJ"G?5">#!9]*JC?S+/K6+OVSJC&P#B_;UQA81[N'4F-@669P-%F[6KC-"$[; MCK4.0BVSJI,2.AA)7ESSTNY/[>[)6GQ8\>[).GHY^$S^%<;R_>[),GJV($BG M*?T;:/?0&6LE6=PY%_/Y'.M4! MDO2(EI&)G04H7SA$P2QD,FP**N>1Y^^W!G9 KU9*ZF1QN^]*#'I3I-,%LG$, MB,T9?/82BA+9:$4?E[_?7=K5$M5*4?N\>V)\L=IF"[K>K%+9>XB9W+T87"I, MB*15:_OLF=P]V89;G:BO@].-FYAF-:(G1W$\+1%]S*V*10A'$DBQ9K!I"-%B M/<9VQ:"T1K4VMNX%]#C/0[:)T+733P>6TOT'>K70>&]P-CP;+X[XO\'Q^--) M&'#Q&[WS9'R,4226%0?KI +%58&H3027G-4E"9YMZUY!;4>P>WHVI,=:A[6= MZK8#FZSM:*YE4$QSTJ1D+J'C9!LX#ZKP H[5Q E$25+FCNG6=XD['=!W'G>A M^%%<;=N5(#B27)*HK)(H;/,CC8

#$UWDV3UJO['9V.IKI+19/9+'F"F"P)3:1HM>0H7.O2HVU'L._E;UN&-%T! MMU+OP9/U]GH>>%18:A_79"TH+/>2",[3XQ>3/UCK5*R MTBN06>4:S22XJ4@09#X;PSE-P]971S?!N>_U:C,=K[5*-5#0SK?5Q9AOKY\L M!)IJ"D%@"609E 1.D\-63UTRUZ4(O5O#;R78SY9RVZAOZ;*VNZSKMV$TFC9J M[2ZE^LXCNLZ7OG],!Y0,;9.S2B 9<8XV5.5%!N=9AFA\,I%Y)MHW/'X*R="I M>"M)/% 7=3(Q:7IY7R^SZA28TT+*YI53GU4R]#J\;)\,O8YV#R49^JKA]=4Z M]*$W_F-6V4=QGI0G26I-;I$V]7!2"$ 76=!<>LG;[^C+\3S>M.BUF'%G;V^D MH4[,Q@ML%VV%Z['Z146Q%;!UE.M\'Z[]Y"ZWT^)2>C12P:YIXIDT411%SKG! M>L^XD,FK#!# $$RQV83N%IE=T>.!A.']L&,=R7=1ZF_6F/SEMW02!I\O 5YD M@2H?O2D>@JXA.:4CN) 5&*.K/(PLI;FI=!^@??B)K72WN"-\ \$W3"JIWMDR M9&-Z_=>?W]-N^_)L-)SC="GYC#X &IY !9F ?.0:KK6NF.RYBN4A!W#=ASX! M$G0JYPY6B?_ _+DW^/P+C@GPM.#6K(V'L9AC*9"]9:!<'7I1%H1WB#R:I$3K M@.9B),_3*&V@E0Y"XW=17:1RKH"K(U-T&:;]F*$M]/8@%;80^DX6D(O5D[,H M92J0?#6NC&3@I U@G99EYE'GJWTF1RCE%@DU(%#L(F!1:%2(;O;NO9+ MQ29(GZ=QN@.M=G 59P&LBRC>"L"ZM5[O@CJ<*&IKS2XV:1JII3O[=A' R'26 M-&-1U1[/S%APGF?@FM&.ZG+)LO6%FAWS98.PZO[HLH8V.NI(\:H__',.\"+8 M)[U"&P($5>]*FTS[N8VTUDKAK(P>'6M]=64AD+V9.-LJ:D']PNVDW(%E>ZV* M_'&QPNCIOCJ]'(\2(6KT@"AT\-%+;EM7\;WV^,>90[I-5L&FLN_DNN;%:D@# M)J&'_M'I\&PP.;:"\ZPM)SXRPI6E@YT M;G87+YU?7]CP8@O]-/P9/V"JG2]ZI8?YE[/:-.,M?IM<7OR,.67C2@$F:S2I M9!*2SW5#S:+H7$^46ML@;9 _/R;N0>,'D$=Z6:/V:B(NK G1?>'>U0#LK&;O M!O(XH Q5=,0W3Q-!:@R@ MGPT=L,NIA0E \L-T]=>Q(9JJ[DVHX"(;O:NDC5 M(&R)GGZ,3BJGO(ZM#T6>58;J.KQLGZ&ZCG8/)4-UR3%5%974)4/1];H"%PYB M-!&D]"S5X+&VK2?X4TL 6(L-JR4 K*.5G9[UKH#K.2< K*6WE0]]-Q#Z+DGA MLLV:%0XB.@=*% 9>D,.5F6+H3>(>6\="'D,"0"=<6$?6>TH B)*\;88*D,_Z M=0H(A L\,FT4FJA8:]/G<24 K*7##1( UE' CA( M#8\TI[, M-62HHU(^N>>5 + -![85\ ZB7/-$V*D9M<# .I8A2B9S!F[JV8#!6'OZ1A"8 MO!>:95NR;-Z<=4V,6]?E7^UYL]"&EI';8#QD8T@*T3KP20B0BD5NG&$R MM,YK6 ??KB*6G?+H3DW^KA1T*)'(CQ,:6_V@VK-B5W*[R"B]2<^9X:[L:%[(@W]+0I.$ZTH[JZH]<&331 M*=NAY;L2QMT3J"-U+R=5>UUUNQQ= "/<-_*^WH?157S>3R:@7SR;5S/\TG*$CS._* MI_#MP[#??S4<_1E&^5@*VLYK&$S8>M$K,@G.88'LC F)2RSMUZO5X1TDH1JZ M[!TIJH.-\.-DF/XX&?;IT\8S>^"8%W0&:;P:"[&\1 :Q"')2$TTEIM %UYHZ M=U'L@2%=*>V.?[V5Q#O8L-ZEWL]8AJ-K*A\Q^Y13U*R4U@DM6\!]NBS&[RM=85P[[2MMP$EU4LCI0M092K$WK@V$@:"I;+:6PJ?7-ZX-.V[ ^),%< M!J^F/5 DAY"E!>2&<>O(^2RM)^^32-M8AT=;I6VLHZ!#2=NX;?"_.Z-];851 M3\\@F4W)1U4+(=82NS;6HM;.M27]O@?11)'VN1Z 'OK3-E=A"^ MVA3[_+QS%?0=)8]LAWP_62:[8THCBFZAYL,CJ_?9"RLEH,NUF&<2Y)ZB ,N, MYJ4$1S/^&9#T@?R7Q\K1=;1[0-R\*#1K8C'>)HA.<;*6"J/OC F:I\-A1J; M!R"V0[S[^,,N^=&(FALHMY-CROLRVFQPZ%E1H+UT-&^+@1@#@4OU4ATK7&'K M5?'QYPAO8RZV4T<'9TN+T]I6 ?7<M=- L2@4^/HK-7$%72$)EEJ+PP'LV.LC=Z M2Y_^Y4_AV['-(>>B-)GT]$5EM,1WS4%+D4J)+G'5>@_; .;A9 %LINL[?G:W MBNJBAOUP/'E7YL"/O6*F^%J%)HI:BB9*B)@\6,&2+TP)+IO7KK\.X(GQ87/A M=I)V.4;ZP).C0?Z%$/6'7Z8>P+"M*W7="^B),:&=\#M(?OR(_7Y=E0;YMS#Z R?T_04R)97+"1.(*&+M&>1I MS#Q ]"E+2^.VJ76B[7(T3XP3C<3>03KBKSC 4>@3LJ-\2D*N@ZU5JR_@>6^Y M*US7_KCTI>Y>+C(%.O)HK17%I=;;Q .0GA@U6BJ@@QS!*P/\PM3I#GYO$$;G4Y/][7!0LU-(YOUIY<()CLAA.XX^"JN1 M04:LK6)B(C??2&"\/1?%W.6V:I& 3M.%L*!58'WH\JT,EY M&.0:XII:=V]QLN3E+1*'-WO0UDG"#<;7*"'XXI'O^V%02Q)>/O>*=]))BTXF M*)I)VB+)T0I2&B"36@7M29S-&U4\C&IK(SV=8#[KX[NR]%FSLUT3ZVTI'L$H M:T&%R,$Q6M]#"@&-ELZZUI[S;F"-W#/E0'DCI(^:K-/6AZ%3 MLJ7U]8&]4>>!/(Y#8,XZZNCD_.+TRQEYD)?0YJ>\(BI33>=!4C[KW*0LO+L7I7:0Q;@4V%N<'+NB@T&M00:'H&2]1Y"1+$L?E&8J M>;.[?9KP/#D2-1/^4K.^^R/YMV$TRZ5J?PA_YZ.[.G:_?PR[.V@7)CFIM" MKIN7Q7M\!^WK<&3C@_9U5/&8#MK12!.192@*:V(X^3V.F]H:6 I% DU2M*;8 M4SAH7XL.&QRTKZ.6/9V2K@+Q^T'[EJK=X+AT$[WLB4)**F.51C"&TRRRR9&1 MKQ1P01/*IU"DW5E$XA$E WZ( 4D7NL(!>;!.9[!FA2,EY%, O60Z=T.S@%Y9YMJ^=[3 MELY5U##0NN8(W@XG),-4+_E_Q-'77L++8X3,G$ '+&I7&_<4FH,8()CLR+]E M)4?7F&'+L#Q;>C51SBZWO!J\L 6Y1J:)\HF^L'K<7(J%I (/3H42?>NB"X\N M>%HP-<,*.7KS$H^DG2"+LX(C;<3 MSI8L/:T0/1D.[4]/N[@Y-*\.4*[5C!C_>:UHQ+A>>4H3S-?>>-3O?\"J$AKK M>QR5X>BTKLGO8K_W>78-;XO@9K> M@Z)[E!>C0*I"VU M=5I_$?O M'A[S@W,0C_F!NXBW9?;=2?SN)!Z&#+\[B=^=Q.^V])-@['=;^KLM?=@,?9*V M]/P-\?QCZ./XQ4D]\NYW>91R[P.[MX-7'^_A6;E&):%#L.!=+:84A8 0C */ M1#0O!7.Z=7;:D[-R8Y+99BM 1%U 8<@D0[)]M/-"FVR-,*VS'IZME;L.7SNR MEH^['.$^96P5E1YGTJR'<3S)]>PVO2:$MU+,_,F% JRU: MB9;E__FE( MV,=GA'>>/:M2X4)X!M+ZFCFG _@L&42NBXQ>6>-;7Z9?!=?NO>0N='K[WF%K MA700HKF.\=/):'CV^61:2O\4=JT44EW*1AK]2C+*KAD6;4$T9 E:!"\10'994VOJ!*:MR1\%,WD M#LL][$RE2U>OAK&Y6RG;LU:PH]$YP?Y[Z)_AL-Q^QQ9QNUWI;Y^9CKZ@I2LP2M0/I:\DW0R1UC*AIBH@,'9>LN7>]"JYV=1[N M>=K<$[8^9A$T!%\G)Q>Q1M,#\&D-Y7I-I;2N"[@ZNEW%PIIS97FUAZ8*.91( MUCV#^OG\M_#?P]&+?AC/6K"[0(N^\B3&4(MV*\9I(Z ?17:>W*'@C'6[FW*W MX>V__D-;@MPN4]F1HCHPYNZ!>@7T;3B]N/ZY"MR.8EEK0MU/4*LSU:].L69Z M.P"Z:69$R:R U>C(U0ED9))_ X9<(!Z<,"JVSD0[")H]$/8Z5):MHZX.V#5O MC$O^"::3P; __'P^K:)Y42/8VI@XB0$$UD[9GKX$:R2DD$7VTMJ06K/I 4B[ M]S@[5>FP.WUT490W3*[5BQ;:1B<1V>;*ZEU*?^R3-NBKHH/_C R;?9;;4 MK\-A_K/7[Q\+EM![IH%;A970M?D<2U 8LT895^SMLM5=NUQW,#Y!$G6JI@Y: M2"Y@^EV,3">RPYR#K&KD/ 0#P4L'-8D]%;3D4+1.QUT%UY.D3V-UW*6,;IX$ M^7$R3'_4ALBU1LT_SWK3QD_3%V,88ZZEMG$PGFZS+=I8;?.XK1,AFXVU42KD MQY,PPI]O/_J(GCSXC+-6#U=O>1_.IST?_PRC?,57S\BZ"0PA:C*F%2TXX(PT MM+N)(@0F1"U:IPENC;I=&N6#6,;+P,P.'D0MP<)MA*Q% I4UKW8!@A9,!2&$ M0]%DSFOWY^S](W"D#;N NQ=J_L'(7Q,AG(%GD]*^?@@E*@C)%JKR."L .>G,5(Y6:*A;=/5T+JQ'D)R 71245IF6)"K MM19ZZ$E[Z-NQA1J&79=6)U-3_XO$>N[+;R;#BGQZ/)\8=JB,Q.^C'ZJ'F! M8NN)K>42'/<&HF+!92N+%RO9:O2IUY9H^NEJ>;[QP.=IG&TN\X;' )<@YOQ; M!<8ZYM@J%&@_M1^VO[80_FWU;2&Y+F;P1?E%3\E@E2W&00H^U'L"!KQSIE98 M4"B9YCRN%-=Y0',W'KJ[?74KL0];R*RAI30%$KY= Q(EB\&G L@BF?>:K+4H M@X'D&8K$(B);*6/C(>5=?^@C5-[&,NO 1YUMXQ=MB0TO&!)9VCID6DI&D*B&1C3$8;GUN'\!X/;Q\(!!XX M;==1;0=TO1$:>7>]RWKD+$@=!)12,[NCB^ U4\"=<<5):6/S--BE8'8?@=J_ MKH==**J3-@SCR:A7BX=-H?U.FAE_^/C['!PSCAM)QFHI1H!BN9;(-)'L$IYR M2<(6ZQNSZ%Y WYG44&&MSS>NE::;"F,1THOKW_DLS,HRQYR2 M3<6 \9P L:3!656 HPVH:8,LLD5@:.'#GV=,H8TN&J8^+P14*X]^P/ZL9^)) M[\NGXG2@C<9G!>M"SIK\21\=!,4T M*(P1G D2&&.)HR?@34X3#H(X]YP5[9?L-T5O-*WI722Y?5V$W( M4E9CJ,CDR5/C@K 5#=)K7P0Z8_-*16H?H,7BI^_VP*)390V;2KJ+NO>;9D"_ M/:OPWY6CG*?*"?V9@75T-CD9CGK_@YDD98V7-'VP) F*O#)PD;Y@,DF96)CG M.X\%;CZ< [2A.\Y./Q!J'"+KYP/Z&GK]:H"^&HY^I;^=',? ;#&" XNV>BBU MWX&G;8-\2JX8&LS-V^AU-9;O?-\'*?9QSK/BN*YF+V?2.O8V13,G:N-=T<3;X^&K"\#:9A;!8E$5:"TS4:J/:2PB6!7!)&!:T5CJM MEBG?!L_SXN$>=-A!S82-9]/EB$?DF+XK]->GP\%,%K/Q'RN6; HR )HZP4JM M0D.BAIS1&F.2M[P3N[:3T3P;;A\8,9;6?-B"\A7+Z_'X#/,O9U<;PLQ463JK MQ\=*\1 ]2\!+S2FUF8/+M19&"E9DG9PUK8O0; CU^9%U!RJ]RT2S-R]K^N7O M.)Y<#I4?VU"L-3$#JB!!A90@*B,@I1)B3DR9W+JL5DO\SX^S^U+^72+;O5D1 M+[]]Z8VF;YY;Y48YD64]B\VU^:?P9 EY%8'I*&Q$'L7MRY_[,QIN@W^>%-ZY MVN_RU^TG+/ IC#[CY,K]RIE=\^DD3/[1Z_?K5O#[E^'@TZCW^7.]XB^2)OL%03H9 M:2[%2)+SU<8IP8="/V>^!0M7!O*=>UUI;4' ?^OCK:/^]#V8%PNQME >C/%8 M9UVX0 ]!Q7H(ISPXGNF+)8=.99HPL5@ MWPX'7VD^X,RV'7\:3D+_9LAL/'D[G/P_G'S -/P\F!XEV&02C[F TZF6,M$, M2)X"M!+6H#%)E];EOSH;S+-C[V'08@'AMZY^W=G(9J;RJ^%H_E)]'S^6UCD6 ME:-]H]Z/$;5"JTL(G"5C:B,XEUNW?]CM"+]/C<,AT(+YLOV5Z!J6^X!?YH&Y M?#3('W#2&RT*Y1T;)BSS6D.J!3F4-PRBT@BU4$..WDBO6[-]'7S/CJN=*6\! MT[8_ZUH)[-]#_XP<0":RLE) SIEVD4Q>H,]DCI?B%.TI9)DW;U*P!KSO/&ND MN@4T:W.^=(7U_6CX>11./V"5,T&]2H:Y>L_1Z?!L,.''R9$]GJ(&&7.B&8*Y M=H614+Q$SP-C-KST],P.A^6!5^D!/XZ2'99'7]C"1U.X7RK5&"!*6#6$$%5K0_)>0:C0R07REK.FAM66Z,^ MG,+YM5*;D^L(ME:'+BW(MDZNG@L%9U6 M&=/WBF1K521;BR:[*.VTB8X?"W^S=IX&42_QUABRYPR<8@E01T[C"TR&G5_) M.AC>KE61[.!HNXYJ.Z#K ^6)G!"6_H'C&,@[Y0&\" Z2D2Y*8;CUKG/LY[4 M)M3I4CM=E_Z8+MH:=3))TU)M;:W!7"3X:&M'3ZX2DZBM7JE'YO,L++2):]!& M%XV;.*Q;Y6(5J-\+"ZVET"T*Q&RBC3T7%A+&69LBARPDS1Q/^VI I6DBN62E M4_5^T%,ASMJ%A7;%FW64T+I$YNUZ-_RB$4KAGA<;P&1==TA93VU(%(0F)J^S MU&:UQ.HE#SCLZD%K:6386)R-6ULLJ6BD9>VHHLA-U 1&6^M M6NFX_0G6CMI$^XTDW?7T%A<=R@)G61@RLHTB3"ID\%XK0":2UPN3O.BFXX)D0CBPW-4E)](@::A0,')53&:%RXU4+)^5BC<1 M9_/B%;QH(; :N/!S%2\G3*UHHK5LU+Q)N+LJC#$ M)J>U%[U'QY/1V=1;?C8#RLX_/VPR70(54'7'VTLYI:Q][J MX)F2()6CA<8D \'$!$9JKIU,5IA'.%-F@WM$DV0'+-W]A-J 8H=4?/#!@4YK M*XY?7]PZ3[RZ.R:#<#S6P'N&:&TAE43-M*5MUK=NW[*KL7V?27N925L0K*$G MUOTX_S[5Q^4XLTY>23)^M8H&E',(CM&/R4OG;8OD^DO4RD M+0BVC[:=&X^3M%"P=WVH1DO!?+VF70J"2ISTX7ET["^].YL,IZ$0>X-/L]UD^J10\$$/ K23:Q%3X)* M('5BI01FW54/IB8%D[H;RR-:V+:+[QR(O-?BSJ-R4B_G^#^P]_FD"N,KCL)G MG/H6OX0)O@J]T?2JZ_5])Q2RD634(&C! \64 9=X E:$\R9S'>PC# NM(X)G M,P,/5/YK4?!1>;NKBX,\?AZTL0FT==-CH 3!. U!!)^M*]RDE5(G']DT?$1S M[Q#(?X 3>2WF/JK]]&9,[F%!F.JFL2(!"^E/%1\AAEQKE:!-2DKN;B>;'? 4 M7G/PW^?Q8<[C+CG\J+;BFW'!AP61(].:NVGR4P E109?!(,0+$LA"V9<\XHJ MAS+X[Y/Y,"=SEQQ^C,'OLQ&.'Y:"<#8FIQ&RCV2?Z.(ABE(@%!ERX"SR=# - MY)J._/LT/LQIW!E['V>X_6$9:&V48I),$5U+7!=O(=;>:UZQ4E)-7>4K7>\Y MB!F\J6_<49 ^=A!HO36RE]]PE'KSQD['49E(L\^#3XD3H2TG93()1NCDB\_1 MIHY['70\PD>T[.XPH'_0/%MJ_.RY<-[B7\\KM.^X=-Y*6/92/&]]*1U.^3R6 MI&-(-CGWB=72ML124QP47VC75TI9WKPWW-:H#Z=\GDW.YUJ&4V=>RVC$2,N6 M+Y BR32E$'WSKA+/L7S>.BSMKGS>.LH^E/)YKP>TM.''"=EU]>/>U#^H@ZX7 MLT7)O-3>["X56PNH&PA88VV2BVP2]Y:U3C"Y!\[CKY^Q%C^&W>BI@P..)= N MKH^M *ZCBGGW MM/Z;MF:ER-'EOH8.=$24DE2.@F='%"RZS M;%TB; \$>:#&W'[XL8[H.^!%;>E!JVOHXT7AJ.(QT5,].%=/>5C6X(..0!*0 MBBMCLFN=;' 'Q.[=Y(9*&K:4< >W"C_@&.D#3\A[_@6_8G_XI8YX[A+-(7)# MCK"M5\$S]Z LJU?!N0/FM-9)E)B;UZI< =93HD5K+721/8']?FU!,,B_A=$? M6%L#W\2GR([2+D3PCA43TG.XTEMO_L5;X+,P3BE:C6@Q&BU:M%W/GH.*F.]]RAY+*T/=)YP,]!MHC,= M*&RI.=,RF#Z+SH1!_A5K,YTO)[UT-,+P>C"MG5H__ /MN(,SI+>\'PV_X&@: M2:XAY>DF_!8G\?SFWVX33^\0SO8A]5W)JE%4?0YF_(KFRDOZR-$@]%^T MKH[&M/R]&0X^OZ&%+Q^-QS@97\T#E5C(C PH9+2P*B(H!%IPP<5"A.5*.=>?*W'=8O!;(NC2.KI:4>:52%@TK"07P$!T),16(SB8PO 2;13865PI1 M/5#,<2F _8? NR? L+4B&I?^G>]6UR'-C>=50#6L$KT4R.[K03=2U+ K*>^, M D$$FY*I%5%DFM7*38>3'(02&'BF+0;ODL25YN<: M=N6UQS]F?6XKS0XFY.NWQT;E6BI>092E!A^#ABB< LP VEUKJ,\C2)\J:O?D&GR(*.411R4;2@45D&,6D-V1HDQ&@2NV5=+TF\ M7?Z,QZS EN+K(+(Z]PRJ8_""?+)12)-:6/C".7CY+?7/:DYL=0SH7_X4OAW+ MG#+G.D",P8/2F"%P*R!%6^.%VJ4H&B_'&\#1].S@Z/!I)=[_6E%\CN_W"*VOMF#MHZ:-QA?HWCX]0=_1&(%C07'L_4" M\VP].?UR-IE&\M^5EV$TH&5D? 'MBH]>."ZU1$C!6",).G1!F9-L=B\TD/3$>PJGKX7 M[BZ/K^]<^?N.MS?2P\_GBS]@&HGRTGCCR#3AUDM0@R>I+=S @Z$+!VDNRU&=JUMZRKX.DJG?PC;GIK)'PH95B+IEIK< M!^.LE2P&4VH+)O(2$"5X#!QJ-EB.(04,S7.A]L*TA]J_/U:BK:/ #@CVDIRH MX3GB]!;L[.KT1<>^(*/.1H)3.A PKL$YCR!,5L$&$Z1L'?Y9"F;W;GM;O0V[ M$'HWB?_W=)WG1NKHBH#"G=8CKF-DHM8(-"""J#V>R,?P43-PDGEOO(I!MXX!-P%^ M*'3;2E?$>[F)Z\5 M0UX'Y:[*CRR]+W^)[6B0ZRIUS?1O'+7L N(V&R'Q>IKU/DBS1R[:LB]7:\]< M;7^LC:P95DY"C,I"UI*V""Z#U*OUF%C]F0=X_60+#MW8(3L2?"/[]S=,,HFL-O4)8'DDHUP6"S[0/D<^7&;<%:M,6LWD MO?7)3U-YVPOQKD9U6^M@*K)/HS#-I;@V^.;&PHUG7#UB.ZMA=?1;&A'TL'KY M;\&C'ESH[A?+@Q^\57K;J/>Y-PC]RM(Y^8)W+AMK04C)0 4ER*U&#MES0<0S MWN85T]KN?/;NYO"JVKB9K+:=,%K'&-[BG]>1(%>"_!(PNG9/DUQ#9$& #6@# MCTR:PE92RXV//7"-;"Z"I>Y^TV7Q]2#WOO;R6>BW7PYO?W:#=?!>N&W6OVN/ M:+/NW?W ;>;4?V(I(SQ__Y?_"(,_YK1BWDC/=.U+J"JM5 %GL !7/">DB4[. M^DHS:\&'[WQ^+97_C7FUK1A:9UG_YW#X6^__]D[G4%Q6+K$@P15'JZZMJZYS M')A,3"/J:.5J<=.;GWNHRMA\\ V]M2F4GT=G"=\/QWA^D:1MO Y.%D@UX5[Y MFFW)B1DF<\:2U2J;U>;&[4\^4%UL)8"ESM62/6?^7,M,C R-# Y,S!?;&%B+GAM M;-R]:7/D.)(@^GU_!5[-VEJUF5#%^^B=F37E59.[><@R5=T[5O8L#*?$[E!0 M33*4F?/K'\ C@G$Q 1 J9_93)=2(N$'Z Z'G__ZO[X_+,$3J^JB7/W;3_XO MWD^ K4A)B]7=O_WT^^T[F/WTO_[]O_VW?_U_(/R_K[Y\ &]*LGY@JP:\KAAJ M& 7?BN8>-/<,_+6L_EX\(7"S1 TOJP<(_[U][77Y^*,J[NX;$'A!-#PV_+7Z M,\$)89P1R$*.8409APBG$<0D#7%,DRA/O*N[/P?,CWS/"R!&*(91BL1/N4]@ M$* @(%F4,\3:19?%ZN]_EO^#4/?#Y[_%K9/^WF>_]K^=?-H71Q[4"SK__I_/W[X2N[9 M X+%JF[0BD@ =?'GNOWEAY*@IN7Z6;S R2?DO^#P&)2_@GX 0_^7[S7]Z=__ M&P =.ZIRR;XP#N1_?__R_B3(_%?YQ*\K=B?W]H9514F_-JAJ/B#,E@+[=K7F MQR/[MY_JXN%QR8;?W5>,'U]V654[JTHL&K2CKM.7.TJ"@__:3^&FQKN$= M0H^+W[_^5HJC-B''[2X$]S M0LXK5I?KBG0GI,!+6@<=JO_^^R]??P&WPAJHU]4/@%84W&TP!*C'Z5]_W1+D MAM'+E\"^I1[GOH(M-F",3LO& 2&PQ0C\T>'T_Y[D9TEVH"^ED5%6^QPIB0V. M;.6Z%BQIV<%1C5N>],O_*FV^7]FRJ8??0/F;5K@OP>#7@X_HNAHH1Q4YLU?] M$[^24MADCPWE0_66-24UKZ_;D,%ZC^!LJ*L$M;Z$38U0Q:1W2 MU^7#(UO5+<#KJA)?(I-HO/JQ?>0&_9"_NOZ&*OKYL<7L+ZP6&EC@]_;[(R.M M,I:_^KQNI$DK[PE_9=*Z%\\(PH2\?Q&V;;$2OW]=KIH*D6:-EN)][C%/$QGTYK%14Y"\'87?G0TL ?"4I &,JP8A,@'^ \7,] MJ:"E]0KTU%Z!T2?T=O0)R5^+I[947X&!;M 3#C:4@Q'I0-)N[Q1Z>=MIZ7![ M083->F:^(+I/',4O$$.S$_Z:_FU=-Q*]^K;\PN0&%4LF[O[O5Z1\8!_*6OS^ M-:KO;ZKRJ1!7G5<_?A&I-CFM)4UAZIT)= M-8LO\@CK_2(H) 'S4P2]V)/AE32">9Y[X@X6\(AG?N0CHJ+(]]9UK'N_-H(K M=5,086E^;%U+G;7[QYM2'J*G97&2%]/:[P(*->UZ4^*4%X0FD'O5@Y'L(XB0G,$,\2H*(LB#6,I3,47%M#FT@ M"U-H U0"UO\IL=/T^U@SG=%-\$LW#2XUH,M0-!C=36Z:6\1NP(=0A;OVA?S MQ-;=V!R1>>^R%S/LX.YY^8J&=\4G5(A_+]F[LOJ*ENP-P\W6X7Q-R/IAO90A MM]\J8;/\OJH86DH\I 7SBO&R8K?H^R+#":&Q'T(O2X7.BU$.<9J',,,H"1AA M44"2Q4%(]_RUPP9R2G*K%MR>"MUL@ ,)73? 96<;%"]SLW'52!M*=$81+J'N M!GRA@ TEQN)W6RQ!BR;8VX K@%M4@<#5XCW-)NML70?KE=T]Q>C)[ODQ_[F60;"WW\7U977' MOH@S^"WG3'Q[//&3B!(J;@Z^D+TX)##+O!P&2>QQFA)&DFC1;'+^SAX/\Z*O M)> G\B,GY.%3%UQJL1 _M*&EJR[ Q+98MX'\:D-3^W>]$WGF/5<[Z%_N3FHJ MM7;3VE#3"$'IX-GL6/>(W,:]7^Z^T1$%!JK SP-=?[H"&]+ 0!N0Q(&..GM6 MRO/LBB7C9V;D9[6IGF=C]DVU9\+"]*A[+)KN!CBD84@K4VC=U^NJ$A@M?"_T M"(\\F:+MB4L;9C"G60@9SQ.>^QQ[2:IS:3L+T;7%V$'1/1W.L4E5H5LD7E<' M;T!O$M?:&]V53 P0VOD,7PS4I"*MUC3;.7@S*R-%\@_UA^J+IMZ9NF9L$VEO M;Y8?"H2+9='\^(@:Z2KZL>>72'*P<@+$,RC.(=Y&C&:D"3-2*;G MN='&87:O3H^&=K6&"7]5_3Y.N:;K$Y+(7(VRA'HOT0:C*YE?A!FX006]&MCY MP[$#R9A#UIQ+^AC,['@R9M&A4\I\*3/=)?W5I+Q;2>5XB[Z_8BO&BZ:^O4?- M7\OUDKY_>!3JLK.,BB?IRI:6T@+'<4!ID,(H3S&,TI1 A(,?5%)M[?NKIMAU6 M"FA@P$@P$#6@Q0ET2($-5NV#7Z88JU^,=A%?;-6CF2$Q;TG:18PZJ$J[;#5] M7_QMA>3M[NN/!UPN%WX:\3"+0TB\A EMQ3!$G'"8H"!$/@]2%BL96P0I#4[Q4"-ZMRH8!NN6EN&"CT0:4 M[0:0G0WHJHE^N5SG6N!1IYWE0JT"]O+0:Y7P)4O/HJXMT#XH=AM+Z1T!C-#% M]7+9GR:C*L2AOX6""C^WAFL]O5R"P888 U?3'V<9,*UW;=*NJ5Q/D&VQ5XAQ:?V3X*G^950@J2ZC2APZ+ZNVF:,9&U+EBYHAI"7(.I0; M";02@-D$6X?1IG,,RX[+I*8XC]/(#<]S%#-.!QI!4'-<1CQECH M@)?,O.HZZUR!%K*W,OE\EU9 M25"+*,ECSK( 9GZ2P\CC'LQ9)G1L0KA'LS#&OI)UJ0;.M?MSVQ_CC0"**O 7 MM%PK>E84&:80>[+*!DV5)D$?:6P!_I#@00]?)YYTGB,:H2.KG#&+$IWBD*7 MCS*%DS&>\ZO,%\Y1IF@GT?!3VZ[LENE-U(9UX MW;%NDE"!! O]'?NBQT#=QW2*^O/>)@N$ZVFC,S2#/R1X2\ZH,\09N:5.K3F; M@^H,46-7U;E'S:YRNZT<_H,MZ6TY9-F^0T75GJ^;BF849-B+ PI9S&)958H@ MHBF",4L03SF-,(YT[FI:T!W+KX2G8TZ8<5#M>N6,+WKB?= W1F("FQ(.N%R! M+=><=/$T8H2E&Y >[%FO.$9LV;_#F"UBD'(AK8'Z];*LF0"P>BQD1D?KCU). MN#BY@NO[1@L8M)!EH?AMT?4C_OCIYOTHE4LG_>(T,\Z?[W;XH*<#5%G0.YAM M96*K7]VBU8LO;^ZII,(>S7@B;-,D@E$4$9CE M.8)^RAE%/&RMT#QE:D8N[S'W]A3V*O[;)S4?X8:U\X0Q]TP4*IUZ>L03A M#/Z[10;G'C:PH!FK?A.Z[+$=F]J&^N[+I7CW2[.Z?FA4+[9GEG%M4PCHH 4/ M6OA@A #XPIIUM3K7&%V;,0K7"GL\T;Q27,X.O2N%&J%FUXDS:\]WE5 CY2635R)-C[E9SM.*Y^P6W3ACR"&'-Q;TC$#0(C(HR&Q/-HY/',PYY> M)M(I4(X%NP4,I8T%'E#U=]:TJ7_UQM>GFUYTDF.*5P?MA,&K^P)[9:;T=PCCR!G_&RN&OO09M!GL6#>.0S_RK' M='$YP+%91% S3J]34MPI8)3G?G4NEZ8WM M0@7']I8LH+:6P#O!A_/N3SLLT!-F!>JMIO*>I]&TR/S9 M$WK/D[97?NXFK?<_&+T35L 7MFQM@_J^>.P&'R^(']* >CG,@BB"42#',_$X M@3&F$4-1@.-,:2C364B.);:'"\: -4=7GV>6VDELA05Z$FM&O?:)>Y8R2\?L M:3BSGJUGR=T_4,^_8":^F_3;48+EMF/B0ORN6(E+38&6X/VJ;JJU1F\S-=:I";0UAN@)]8@7 MNXFU+GHV*-%H2;RG8P'JH4 M_[HMW2P[=/3$_CP;U43?*G/TQ'^7+UT9:P\=;,#;4P#*E%I2 N?AS:H(E,G? M5P;J+QJ6RMP^W$D]\T$C%?_H>^Z^U*XI1N_'WCFJ/MC.NY^DS+P&Y&#%>+4(#H.A5FU"BK14>G,X A#Z?EU0EG].3W%"-TFH09\D:GEX1E'ADV'4=X M+1N-[#8;KUL.5EL./G;8V8!QG[D%?::?K'J/[O+EQ(ZQ.$HRF/)4W'%Y2F&691S&<9I'*?<1B;3NN(9X.!9<\8&D MFMXL0WXJ^KG<G'<[AON!$+ 1\+(""95,+MT:5A M>YO39V9E;^FT9$ ?)V#25-Y[93ZC^#BN.^;OB4<,T^;+AP>9$R9,YM:LKC^O MFUI(FISTL?#2T(M03J$XJQ)Q$H<$8L]/Q?^@, LIR3.D53P_!:=ZKQ^0L52(O:NK'X3[S:+B ="1LS]3TXDO8"8.XRV7S"#K<-]&L&ESO[&A+ MP N83Z#(XN>>57 .S7^.N06*S+8VPT 5GME)\/F154B.1_@@2Q0^% @72W'J M?!),7%>5P&$1D)2&*?%A2#RAT@/"8R2/&C6I:UBIS-",_&[ZTL*_ !KK0@^?9HJWME$FUI+;. MPYM5_RB3OZ](U%\T;_/P;EE^Z[.M>V]FFE&,A!Z >,R+3((8<:S3+ Y]),@ M\4F"8]TV#P=07'NH9/<#"13T4/7[/!PR1M'_="FYFHZG?4H=-7HX29+%1@^' M,&9O]'"2S&.-'DX_;.H_7K4]P?]:-/>OUW53/K!JW.6QK?./_20+J9_"G,:^ MK "6$X@R'W+$" HB(OX/Z_F1SP-U[D_N4 #?! Y@0.(*[/0F->JQH,115;^R M73[I^I#98]I%$6^!]/0 M"V&4RN9K89!!G*(@BT@<1:'>F:X U+'2>,,X$W HJ+HF#L*D-[+GE?AGKB(N MX8H=%3$R[E_;MNQU*':H( Y /KN".,4$%05Q\EW#6)7X2CZA!]:7WN(TXF'F M,\B"E, HB8462#P,8T(B'Z6>K%?6"D3M+.]8Z"4P(*$95B3O\4(Q3F1,H680 M2)TX_?#.41ILQ6YV%Y\W,'.4L(.HR_&G] 2J[>A1_5C\_G61!CS.(I[ V&,I MC"A!XBC-A4RQG.1ABA#+ Q4AVB[I6'!^E[E?5+;":E3#KR-RI^7$C @]V?C] MT_O;MV_ U]OKV[=?+Q>+0Y0GH#Q_[D;_8F%W7 MGT+;676>CV*289A%R(-1'"&(5+LVFU>W!T_FFQE"5 M/ZT/K*Y!(^QQX ?@09S']YKY"=/L4CMCK+% 3ZP.!M'UD&>8.7>"1B-,N1-D3\^0._6282!(5B=TB;^CJ 7U2.(C[$,OH>**2"(,<<@RB+*(ZR1S&HI]ZH2:DY_DU+:A6 MN: GK,8,4!9:9>(FC%VQ1B>SXH>MJ)Y?>19Q529P$%GU%\R.TC8P6VO:>KLO MN?O@.CA.3+GC)%@Z#_86G_4@.$[8_@EPXBGKI9V_565=+[* <>[[&,9ABF"4 MX@BBE,8P1V'"PCB.<:S4.D(5H/-H7ZWIHC_+(36YLTFWGB1.EE\*RZT%/TN- MY0ZA[HLI.W OI6IRAWB-\LC=]PSSL/M^*9_Y!*!N7G64H2#)J0\#7_;X]D,D M++Z4PL2G.&%!@(GFN"1ET(XE?]PS9EHDS@Z]OI3':AK##>?T=,=AM?8.ZZQ- M!S>GV5:RL3K@>=.'M1ERD!"LOX*9DKD6]BTMENM& -AZCT8!KR1,TQS+VR.7 MD]@R1&$>D%C\Q# .E5HYP Z5BAC\#MNS M"A&=YJ*8Z;')&3V%L(_@@XV M"4$2OA!_:3NX\!'K4&PM6U@!Y,S)P^I,.,PEUGC73"%\+%?L1U=>^FZ]HL/H M0LZ\.,F0#/5X0@5XTA[ *()>A!*:Q7'J)5I%G,?!.!;Z%FA?: ZX!*LG_"=X MHR;NEU.L)^ =L1U T$)TD/ _390E&3X!9%:IG29T7T[//&TFF4+*92W!354^ M%9315S]^K^7E8%/[(. ^K$MOF4B"UD>>U1DL6ZYJ5)#&SST!%N#M6K"[H9A>@I M\JHM^KD9\>IGB0@H5G\"V]J^Z_-YFN=_#NK.S[P.UA@61#9J4ZW MF\P.&]3DWI@X/='NP3@XT(\28"O[=V?M>9-_CY%UD/M[]"'7A_4F)LQB/XVS M/(5ASJDLI_5@GL8\F?UH?YZ4 ',&F1_UEE(+MH&'-ZPJGI#T-HX&@(VF!\0L M8RQ,(0T#H:1HED)A 60P]TB&T\!G(2=F(<=IP#,&'+>(F,] 4^:G;GC1'I?T ME-!Y!NF,KK@@UJC& .N1QC-@GRG.J,:,TU%&Q??-=,I;5,E1Z?4-J_K9$9*^ M8EET78Z& SF)TRQDD0=3%H8PBM( M(_;UA>;;EUH@UX2L']9+<1FC;0*][(U6L7MQ@V_UE!2J#V5=[XTUP@$B1)@? M$".QB"#D7PLT12M[_D MA9NB:]TX9[6YT:/%Y9ELH8O89=U$,L/FF2RGBUAWVJ"Z;-G+VC:T+8J\. ^] M(&$P;=4@YS%$# >0191$24*B/- :+C]>W+6S=MO5P*"!TPX7%)VUAK1I^FI5 MR3)NU>"@N=+.TL_2IF&J6=+19XQK*KIYYZ,+T.=O*YE?43V6E1!D66![W6P& M4"^8[*I&*(44R:IVE!.(B"_^F2'N<9XF4:X[*$L/ ]=>V@$LP*5VAH0^.]5$ MU2F3].1Y@\K8^7$%6FRNP)9[$J$K@!JP'2IOM7##C!_V*CDTX<]=VF'&GB.U M'H8+&=Z"9-L5">7M/]:RKY,P'\J5!-H>:XAZ$8T3"CEF0O5@E,$LCS'D)$BI ME^59QO4ZZ4]!Z27S>?(?67-?TNW-6'&T[8G7'K'^Q7M"O44 M)>K8NX[%J0M2LO4$2X%B>_6(Y\@S M$K"C"\XF75/DC$5K\KF9QT!]?I0/UG]A=>6(7N6/\7=E,5A"UR/_&C3)BXA/L!C!CW8(;B *8)SU"$?48CI28V M+X,JI_ *=#2V8P,WX[R;LOVU'/"]H?0*;+ZOGMCAKPRTY+Z *5=6M^VY M9V'9(>:?8V*6U8VS-E?++E:&'NG!E?3JQT>&ZG758ORN8O]8LQ7YT3HV4I8$ M.V5F!AD-F0?K1_'CDT!!7C_%'ZL-AL,#JZ*I]2>N7K0A MT^IF+C;KZ9]_+@[3DK3!F?:@?W9.[V"CGC.Z&2S;\0T4+9* MEC*>YM LYTQ M>\#RIQ;%7RX_%VQPJ#LHY$JM]O?RT&M/@(O6GN5(L$']<$9868:';,WB2@=/JW#Y;-..*%W+$H(FP"J$7=!*>7'[F=L(J MI![V%%9Z2S\.\GY5%^+)W@M\4RX+4K#ZIBK)AV+%WC?LX=Q51W$5AV9&!QP, M$8,!?.N>DC@PIZT]7^G4#JNB1%/S&F,TQ?,7&]8+?H^W4C3%.\;MH\]?(& MM6WM\BRF04AC2&*YD]KN:>%Z.E-(GGW>? M_!@U]1R1!SDL2URY!DS;LONF',K[^MM9<\_Z&YJ>U%O8%C5-,1.KC;3+/FY= M?XCKSZ_?;^=,=0A> =RB*(=C7($QEC*$U>%I3__8XYDEG64!H5GUG#T&[NM& MBRL;)/71O]V6,K1T_= H9_*-WG&=OD?_MJZ;-G(@A&(< A,BTZHSC6R^,:GG M[Q*F5.KIB],$GJ-/+W'O"#%FV7KCA>9+T3N"_DY>WK&_/T_2T.@Z_'XE1%5< M.TA7'I*&"8\RS&0?I20,0YK-F@]T$E/',OT*+:4W?MZ4 MG=/;HF9SO AFZZD6FXDV(_2OP(8 VZ5 SIG\0M)B3N/Y3Y7QP;$BU;$6=.@^;QO9(5E/G8U@@@&H.X/I/(5&YM/$ MLK,94^=)&YM6"D\;W#KN[IK7]ZN[FU6]^HNL2/RZ?GCH%JZ;U2U>OBNKZ\UKAKP^EXJ.5"LP(UX7IZQK>;:[\?QBJT8+YHV M-GZ]7((;V6]!?-NR3KP6W_UC636MVP9(RM"^"+1I\QI7(NU]4+@WN=P"S-%3/,7OCZ@Y?+5NBY6K*X7V \H]N(8 M4BZN?Q'.4ICG>0ICSO,@3L(0$:7RKQ/KSY.AT(($ TS=?(1=ADSK$PMDZFD, M/0H-\@N.TG%!0L'N>C-G$!PEYC!EX/AC9NZ9-^R)+9 MOS[T-B=9RA!B,<1I$,"(IQRB(,,P]+S(\SV?XQ#K.%G.P',LD4Q+7H1ST&;U!2B2OG^C5WU-_XKPNOS* MEFW%2I^/KG$C/_;N#'=QM!(G1P\8])"U[^5'Z3YO=5]*LIY8FE*K9?E.D61D MW!Y=<#;[=8J'-55L^T&\ALK[RKT>%\0M&PKAT+?QS06IV2(: *C M+$XACA"&/*!1S'T/4S]3D;A)*([%;@Q.J\1JFC73\F:-8#VATZ%56="4:)DZ M\,0"H\-._&LK<]-KSR)X2N0-TJ?VL$&/#X372U1]*.IFKZFL:J./4PLXEJX> M+I" KW1]2Z>I/G^:62%83[K&M#KI>:M$EUF#CY.KSM?EXQQA.ZT^SCX\<^C^ MPR;%/$KE#+!0G(DD#6$4(P]F'@T@8VF<9=3W/*HU'OARE!R+^,5!8K5T=E?[ MI79]G7<7]/3.3!LP7RS^@&?/'73_,&^-@GT&6@NC'ZYLZH3#S7: ^_43*I92 MC_.RJM%2W%?*JNGF.M?-9KA'D#$SSV/=RK=DH M!CBXCO4-,-O9X[IN.GV.JKKNG/))UYV'&[#%Y@IL\($"(?@5R58]NWQT,DWE M J98<_[I8S"S0]"818=.0O.E#"U!MES*9G(KVDVN%C_+_C>KFO5N[Y"Q=H M] @)8)1C C&/90]TAK GJXH#/3OO#$#75IS@8U=G^#" US3%SC%,T="RR 9- M,ZJ#W/)@ QOTP!V$"E0IM67\G ,WKVFC2/R!X:+ZGFG'<7&'_,(>Q2=R+TV? M<9^"+M>7A)D?^V$$$4XYC(2LPYQE.4P(9QSG.(ACIE?V=1:FTB=_2577%OA^ M?Q/=_N/GN*>H ZQPQ$P)M!U$1K!!!WQ3<64[7UF55&N=R<_!F[D[N2+YAQW* M55_4=[:^_4?SX_I;16M[284:2[J^8FP2VGX3E[T&O)$_;H=RM'7-72_^SC70 MA>/LYPWJ,/F\M]<1?_5TAUO66DX*-."8D6=9!\YLOF8#XL?>9Y/7#=M?EA4K M[E9='2<1<%;MW>:ZKMEVRLJ;HB;+4L9Y%RC*:4)Y CV4<#F0&L$\]V7'B"0- M0YX$0<"U6F'JP7>LNWIL .G1D4FVK221'J_Z"B")FF:/3$TFJQDQ#EFGIY8& MK@V8@ &5*] B^+R">4Y'D "46IN#K1!*+ BZ#'$ \Y"1*?:LV*,\3# ML9(ZV2JRN:_*]=T]8#UF_:\W5Z]'.1I1NU'DI9NB<2-SRVJ3>UJ'T?X5KS7)*,JUQLR>KCA+F"5MR7%-&9;L<>85;=SV*/_.WJ%H)=5(+?=(JD^ZFOL \Q3RG M*>29[\'(SWR( M#6B3C0?:TNKB9IKU\R.KD S#?6#"ONIC<8LXRR/DQQ$,HSR28\$IQ.+?D/N< M$XX2\9M 1U,>A>)8\[6@ .M@Z2FXXTQ14U@7DZJG@#;@0 OO:@AXV],DDP19 MT@S'8RB-L-@N)Z$[E >X0^V!&C>E&QOFIJ.><:MT--./:)78(/J";9? M;3>IGV L]FV,L9."#,?\M-8GU2YV,S=-=<+:PPZJ;L!8S8Y^5U8R3>_W5<70 M4N8[?BCK^J:LBW;.#Z(X]0*20C\+.8SBW(.890Q2'Q//(QZCGM#7\CJGIJ]- MD-!2RAM4U$-9FT"5E=SH:7ZJJ5+77-+3ETK9T5ND@,0*#&@Y3XY68HK;[.AI M%%Y">K02DQ3SH]76,AC&][DJ[HH56DI_NE*2SHFW'-YK>EAMM.=\[HP2B1IS MU2XCU6QDV@[)EJ:?G:9C=<603CYD'AEA;1]75(_1N%QEW M;Q.]KE?TIF(/Q?JA?K^20^KD%M<+XJ5)$ 4()C[)8(0RV=0Y9]#S2S=2AHF"\[S-(H) MAXCXL;B]4 JS+,]A%*08<\8"'&H5=SK#U+7?2:8K0-R6'I!Q$G#OB!92O!;F MW("-GH)TMWUJ.O1%;(J>FCU:-+^MD[X"&W2'CO=MR:E $/Q@#=BB:#]$YYR; MEG2S.SQG5=_.V;VOX=T#-+1S95KID)BQJ25/AXF$(4Y@0%. M2812GL>Q5CWL42B.E>\P7JM-(J__K&E]'F6+HG%Y*;&:MF,+;CM.S$6!_"1) MMJR^HS#F->JFR#RPV28?-I/&W\J2?BN6RP4->!XD 85Y@AB,/"^%&8MECG68 M)7GLX1!II5E]D(DSC]6/$DOPR+,XSS"/(,\]1,8 M83^$&68I](F7\ C'(9:H6TUL(X%:0 HIW/V$%L?BG0(H %!S2--C9V*9YQU M)FD[3(9ZRRU_-DBU QM>5XP631L5L7@0:M%MZV14 SKO4:G%B(.S4^]M,_WQ M?D6J]E[7&M%R2GV;W[H[,;,KXOU]531#6<'U7<58YTSTO4BLC ,8^)XXCK1SABS%RK'7>.JEFNGP?U'32K-S54UO+>TM;*I(*>.% M6)E]$%\F?2\06=T5 FIW!?J(_E96K^7,XD_H@;TI9=;-@J8)YH%/9-/4 $8^ M(S#SDEB..&41)C+&J%4^98"#8V6YQ0BV*($M3F"XD[=H@18O(!$#?W2H:79& M-=D 59WIE*VZ6M(%1PW4H#%/K"D^?0QF5G7&+#I4;N9+F:FSWO,O#,UVRMMM M>8N^_[5H[N_+I1QK*/-LCGIG%Q%GE!+?%_=+E'1>49S[0J&OG;93*GJ*[E"F6M)TQ&K.JO$N9M:_W M+E[/9/;+3I^UFTJ.M'BX7C?W925#25U,TU]0$J4$(0+]),ND\UFH.!00F!"2 M\#@-:1IXZI-@E&#.$8@7&FQ[H^WPN )H@PE &J.9=-@YK:$<,C+(PASC("LR@,4)Y%B"*MJ-])2+-8)N6C0;GI:>:HW8FL MD&Q@9TPEX'5H.&C0?I98V_EQ!W">)[_M%+DG\]-.OC#S$*[.G_U^53=56SY3 M?V[N675[CU8==O5?VDRY]ZNN3]A?F9PS*RP@H9K0'6N;]LJ>O9N.B8LL2"), M:0+#C$8P2BF"&4X"& 4\CB*/<19KM5-],90YUE =-FWX[_>O;\ CJSK?CVY/ MPY?"+M=#PIYS>\VUL=&LL:LA-CFB%K3D@D;0VVMS8=WUWY#XA(:^C@/9H*?[ M>)OM%S"_S-5V/O<8-.MT_7-,4W.UG=:&LCE#T+!I^6''X5HS'WIJ"8=7T6-] ML&LGV=$J!-IJ@#T%:MYNUPI$'[2V5GG'[#O]P.J:L=U63$/GR1^#KUU<63^Q M[\WM-[9\8A_+57-?+TB:^;$74)@D*!,729;#+ XX](2YF&"?IS'1RK0V1<2Q M%2>^I%C/8#/FJ)I6F(-/>AJCPTC>0?>ZJ&W0NI*^+,R$$50($^8_&:K YY5% M(^52GEA2,L9HS*J +F76OG*Z>#W#"W+?F^PSO[ #9-NT:,$H\7P_1]!+9+-& MEN00,]^'W$L2DOE>0*A6RJI=]%P[TT9]WBPU8^U;C>F.LK:[J8HWUF?;*CT] M>VQG?EQM-^;MS5?P&BW)>HE&S=YL#FMTPBA;%SJ[R,U[*W/"V(.KE1LH9NI; M JC8O;C@"1S>KTCY( Z(I@V#+%A$O"Q-$LA1DL+(PQG,4<0AY5E&TB@-4.KI M-'&;@*6E6/5[M>U !D4+6D\C3O%)3;U9HEY/5^T2WD$%/\N:HC]=@4]=/99 MX.H@C_\&V1TVH$"])04T!6E6;:) \KYJ4'G%,&E4,)=5%:-M@*1+P/^\;NH& MK62ZUB+QTHQP%L,@2AF,2)Y S$D $X1H[(5!0#VMBODS\!P;4AOH7270U3 E MH-QB8%X/=(Z5:NK (H/T5,*6-U\[WO25/"/@%E,TU:BTE8EY!MJ\"9=JI!_D M52J^IJ<&*"L6@ZDJ[(M[Z<65">D+GF$_X"F"F/ 81E1K\2GS^KFFHO_CFN+ MNQIP::XM6,[R..((>F$N.S,2'^*$<1@R%GA9G">(A_8Z*E^*KF-[?H->V^#* M9O_EB_=)[?1_.=S74T5*/9UW=V?PC$B;:QAL-M!P!9"D8H[.!_-P?):&T1,OMJ,REVCY4?4M.>3#(7O3=60Z5XQ MR7V8LB2$$8\9S((8PS#&?LJB*(IYIE>9;([,C/[PYGY_?OUK5-^W"3Q/8D>' M_K(?M^U[1TYSO!TT+>@! T&Z5Z?9I-J_,<2\;H1H('NO;N;@R(5 M)1*MA7FF8,TQOYI^M,=;9W32X][1EM/ +*.Z#,E [EB^.G$(&<03:?YDOYZUU=)KYO/ M_)J0]<.Z;?[2EG@K?-E MZ#@^%_:1DSD';3[G%K^^Q.Q8;H[NP-Z+]D5-P\_';3TM?AFC'5B_=AAE;<[N M1UCGQ#D.QO')T XHNRA[2*^2 M_'(B]53J@I6!\FM S^2=VBL1EZDK]^AZM5FSYIJ@8:98_ M;LO70B.L'UC5W^J2B&09Y0RF/HI@)"Q"F'N$PIQBEJ1ID!&]@G 5H([EM .K M::NI\$K1PK+, 4V[2$('/?@K," @BW0&%!Q<9G5HMF5XJ("^J?[I M],H6!XO9&5HTVTK;4 ,Z;SZ'%B,.$CWTWGYI#0XWTX"_E,OEN[*2+RU\FO'( M2^1(LH#"B%,"L9<)C12DG.6(9PG7Z^\P*_J.E=JHS@M\^?J[;BQXWIVTY)UZ MMOVQ[YVRTVMP0Y?X<2VM!*FU^QK-/R2MH"?6IK7W++OTXEL('D7^93FLG&S, M?,T )[$PK70O'UG5_+@1\MM95BAZ"ICCPV( W::HL %N.V57MYY]@F%AC#!.L@#ZF>PU+*X2,&-I M!ED6>SG&&/DLU2D[M,8P_:+!>1BF=BS:8H/>(39 O0(MW)81;[>,^#3!"(/* M__,46BO[GP U<\W_>:(/"_X5WC%L*MFW?RM8O?!C%N,P(9!&)!6"C"G$64Q@ MD'I1&F=A@(A6_?!H;<=RVWKIP7(+3[,/Y(@):L)I2)J>+'Y0H$>_ >,AYK9Z M*HY6GK=-XB%)!YT/CSQB)C#"'"'K2G8^ZA+K%GD89"A)">0L2(34I'):HA]" ME!).J4^C/-4J+-H',$> J\M?78[R5_4$Z( I:E)T":F:HK2?GVM/H$X184FJ M#I:?5;1.$;?,VS)75:LN%N];IM.L]$B;Y45&LBSSA2#F*>

AL$!#&F"D58ID@H1C8>U1 J3'2?9":"OHR("]I,\2?,X3A9/K,+E2^'T&!F+O+[:6!R:9>)&;%=3 MJ:Y9J:=V!QX.Z&RJP>N=EM-'&]E;;%Y_ 4]L-;4W06'>9O<7,.F@"?XE:QDW M*7TH5VU#M!M4?:Z^-C+,U\(8>J$NXCS)L%1<<C2+%85;JKI(\L\TE,_/7OZ)H8"OOBD0(=! MKVXV3;"MMC%5I=A>.].S$.=N:ZK*@B/M395?O7CTZ]OOC^)[Z8.G[Q\>I9(J M2*^CMF6.9K-?U19W;S#N3"N5:<\;M&34:!\QXVFOBKRY5$>)SS7O58\C$P%?-A4Q+)6LF7KJ_7M$W[(DMR]:5^[9+4%I$ M0<8)$_8)S<6F1('GPXQE/@Q(2O(D]D,_UKK%3D)SK'T&V&T4@6ZAZY8P3O$K M3 *DIWIW&# "#'K(-NLR%0BT5G8Y!6OFJDH%L@^+)E5>NK0KB7D!3#=/)DQS M%@0DAD&:M3//",S\B,$XPHCZF4\"TR%!%V+F6.6.&U=<7BYWZ6B@2W=133T] MR][HJ;*9M^6"UB&66&B]4\BE>#U38Q!+[#S=!\06 /W+]&U%!1BA^(NJA2D; M.*K>E8^]ZU@S;H&U[4?5+[I'Z3Q_C[V41#T%V MLB7T$9@WG\*800<9%^8KF:FKW\J2?BN62W'O>[]JQ-=7"/.AR_;81O$T94AK M37?B,Z#1.AJVB/2I0J.8M!.A,6*")7G1@SVKJ!BQ95]*S!8Q$Y!3W:+D-(A; M]/U&5NH)RWPT1?&V[&8H^@M& Q3F/(%Y&ODP0IA#1#,$N9^&N>>A#,7QX,54 M.]HOP,; O:EWR@OX@'&N7;!_"8?5%))KKAFIIXD6=<. M3+@7QE1I7J :.,<7D@UPL)30QS4&5WUJH*X2F^:>HIZRQA--5;1A1PMX)XOO M]1ENZ.L9)2)MJ9)I8/-J"R7"#Q2"VEL&CCY9(M#Z$._+I7CE2[.Z?FB477U' MWW8LMEU5PP@J^,*:=;62@^?6JA([0;N"^^]BLC4=@(84ZSG_)HDR<_\=7W(^ M!^ D23LNP.DG+\Y;[0KXW]?UFM&%;,F*"/9@S&)QB%(6PLR+8NB'@1NYOV^VT[H57:"E'0NY/ MS$AX$F0XCF&4)XGL;W?H.^R0TB/3F_7*[6 M[;"JT_IRK5:5>WGHM>K\PM5GT?9V.# C:4+59(C40H-?]",\K\*XLFU6IDSYQB@/GKU 6B-?3MPIT.\CN M/T.FT:WJU)JS7:O.$#6^5YU[U,! :WVCVX%'[;BCOI]OG$8D]6D*DUA.IZ,8 MPYS['!+BQ[Z?^)QYB;(%=AJ.8PG]PNIVDLVWLEJ>OD5H,4;!1+)#KDGP8PMT MF*-VKIVQ%NT:]HL='I@9*%_8H_AKFQY:K'A9/73)7:.>MF7+K;LMMY#$SY9! M,BHQG)LRR!0>UNPUN /7(Z;F(])BKYCARQC(]??C[5[#% PR(C$8X7 $DD\$Z9+HR M9WMN)B,F6'(^Z<&>U25EQ)9]1Y79(L9NY\>UD-5-)[G!.LI\%K,HAT2V78Y2 M3B".&(%)'K'8IR1AJ>8X[Z-PW+N=6ZC;%H[:'N:CW%'V,%]*L[:'N2-W ]') MX.Y)JNPYF(]"F=O!/$7J$0?SY.-6ABH]H6(I?1+ORDIV=_]])<[+9?%?C,IT MCYNR+MIDC^WH0OGK!>4^R_,E,M" M&E0W54FN:?DHUGZW1'>J?MBS"SFV:'KX8"CS&K!HKTL2%4;7,K;>8Z3NG3W/ MH?-^6JO,T=-*FGP!?TAT+/EME7WTV7ZXRH6.OKOI+AI.MMDKBC72+ MD:*KRV./2]8JD14=#\9;K MI=[;0LW 2-+3*A]87?\9H-'13$?XMC*$1HAJCLBRM4%JQM.L3#<;LS7B\QC% M*[!!LF7Y&,TKL->0_VJW([_%@5R6^6=K9)ZPV6EXNZ]@\)$%> ?2?+-54UEG9H M5G0$:5*BZ?41JUMT[XQPM>7+D4O.Z[@9$7'@I1G_S23G3[PO1$?^1XK/D[B] MK)JZ;8(T=7A MKERWW=E.>H?>;;Q#&Q+:9%!P6XX;?U^6N>AT4W6R&U_*YEK-@)0[+F6O_8'M M"2256U]O)\BC';]@+9X<+A']J%V9I\#EQK>]JJTE2\[!^>F$2J<8S)AT.059@&UQ89)0PC^\Z#G$1)'(>8A5VJ*I0;NA<=- MS_!*S6JVQP&] ^[,Y+L6^@RS[W:H=#W]K@/V,N;?[1"N/ %O]RUC5Z(LD:R_ M,,*$\A'*0TYIS#CS:< XS(,@%Y*-?8@I2F&$AARA1'9JIQS!*/ YS%+F M0Q8R[N6&!4+D753/+'/G!=$ MJ%V#BKVS"SE6_2U\L$$ #!B8E.Z=9\JTIK'.#SVE>FQCC(C=>@=XXA,L^1,Z_! JV!,E9RZ<_.2#@U(J$W M,#ZOF[H1GY.P0?[*BKM[<0VX?F(5NF.#Z7%3"47VI5PN^R'!BXS[*>=^!FGN MRS+C#$.<>@C&+"1QEL<9XH'6%7-V$ASKK $+T*.Q,=M!BXCF'6G^#5:\8[WH M;7N^.]J(KBMPYE-PTG3[^3;&UCUP?@+FO4<^VP8=W$.?#Q-+/06OU\U]67@:C;G@(36!. Y;&&?=XIA6OG(#E/EAYV%L0;:!;["\X8I^: MUK?$%#WU?*S/(-@"=MAJ\) Z5^T&1Y">M^7@(><4@#?$3^R9CH.H] M6W9><.AK8=_:N+E)8Y9=FC2RK8QI,\N.&FBTE+%T%/O)#*/=-^;+"#J*Z4X& MS_$GS(\O>2ZBY0UZ9-6GLGF_ZC*UV\9M1W.%AF_'RW,)F?X)9\AA]0/0/=_TS\>>92U25T"@!0:\ MN@Z.KX=,QX,D5R<-%2[DD<53UA"1V0_ARQAV[(R^<$4S%2>N"D7]F??I$#*T M)6LD?W3_NXVNA$'H!VGLPR"/XJX;2XZ]%/I4J+,H)2EG6MU8U, Z5ETM$C+U MX*;K96906JC(/C5=99\I>GIIPX\M!E=='?,/\$?_7ZM1*C/"+2D;1:"S*A8] M1NPK$8T_T=-[GU^^OIFJ&MAUE?I.]XHS- S$V;J3$ S6M],-^\Y=3^MI8'XF;\IEFOQV\[Y,_(! M+V@LK#K+CL9IIRG M",,\)CF,@C"&.0M"&./<#WT2I$&<+AKU[F8NV:G?PFQ@Y[N\9T09(^@O8/$D!&6S@M=Z+,>"X:LV=?^ILOH MYX9^7#T6AI!AQ%6^X0I4&N4"SJU[FQ9H K$C?,_51XWL\+>%:NB81^$ M$7@PZ7O<"J=/*_O"'L3%@DJ%\4Z@@Y;_R5"UP!D/$4Y]&"ZC%^ Q2&&,8TR&"4R?\A/"0Q3 M[/DX9"B.M"9\:\!VK \E)F",BFQ6TB%S!3YU[C^!$/A#H@1ZG!1S'4PXK:80 M'?%/3_%99IU^O;4^$VQ586M GKYE M]6<]96/*537%,P.O])20U#,=1GW08!M4D.IHG"/9(W8%6M2<))E?R!Y+ZLD4 MBUE5U86LVE=;ERYW02N*?MUNEN0BBS'V>9+"+"2RU82?P RG'@QBED11&E ? MYSK>Z4,0CAW0[=B-+LNZ!_L__B4+_/1_MDVBFA\&S0QV.13'0111H;]3%''9 M9R>%>8)]&/ H##WJ)RG)%H]=Z7>#JF8./NV#4T_F8'?%JKU)]U."+V8/QS'! MD?B 4! (]A F"\DHA=C/28##/,TYZMGS=J73*.-"Y@S E%GSMG7#6N.+V@%U M&:5Z9T^W_M4)&]AR"XJC--EL,;$+8/X6$D<)/-HBXOB3AK?@DV%CF:WP$37] MOV1^8+'ZO&+RYKUI/+A(_9S3D 0P#P-A@89I A&+979-E$9)0I(@U>J%?1DZ MKB.]:]9FS18K("!/NZM<,%OQ;CP;"_6TA5+VR[8_[A7H494*9MDJ"1D,7E'P M56A5H6B&/X,WXB]7[6[(;;%XO[;"2%M7[LN0F?<6;H5Q!Q=S.ZN:J#\,XR((H( &COHX"/ 7( ML6KKP8(17/!'!UG3V7>24VK:RP;]>GK)B'1M97*.+DMJXB28617 .6+W1?OL M\Y8[&6^#XMO<>8^&2,@LAWZ0!#"*\PQF#&70RX408Y0SBK1*#W2 .Q;N 97] M#K^?F*UVQ\<8JB;OKMBDIP,F6R&/6IME$6&: MQSR.89[)1 PO3"'*<@8S3,5]*@YBPC>]06\UE- E2"F)V][(6@/EU#=,:5LU MB^WI)F+"BG5SP^1=%R/R=TU%==%F*&HNY[PU4V4]/[L\KP$QL(,9V* F;EP# MZY0-F24#I5(4^G%;K>7.%:6P(?9= M4W;9[,!5M75/?>O0/>&8VAT"]3SN*75F/H.[2@&Y%^N^4F?L)>XL#2CVJVV' MQ)<;":Y<'8CS;/'$*ES: M*'2VO =CO"SL OAYV97//M=FJ)V&,S)8[_CK.+N#V6Z.T3B]4;9NJ+JNF([# MP);X-4.%L@HV+Z8P68-U.O7(.LL:%L ,L9V/#$E/CKSAEI)TU/ 7-__#R?:;4P=M!GS)O[QW_TK/X[:8,9_ M3],,H+;KTE>QTRV[_\>_^(GW/T/O"K1%<=WT #+^D]_^*;P2D&I9Q244_%(S M_W%R4Q2]!I98K:=93&;I78$>+<=#]?:(=SE;;P#U_"/V]HA6FK2W_XY!_]E7 MU9JP&W$[^:'>@G;_'7=?:0L)M*!,&M$>$*?1B_82(LW:T8Z(M=21]A0-DTUI M#UZ:KR_M*7QW6M.>?,BT.VTM+'GIHAI:HJ9YEL0DECYW.4\H23V(0M^#29(S M%E(OI(&637T P?$!*N')D[!B3VRUUO6<'_)#[1B[B$H]K3 0V )STLGU!"G6 M&K3NKS]SW]43Y!VV4SWUX/.,[?E-/-C4[U?=W,!N!CE&<4YC1F!(: 0C[(4P M\P(.21*R,& Q\N:=RW,$1\?BWD*\:""I@VU1TQG/S&P]K6-S7$Z'^':>J?5Q M] XY^T+FW1S#\)]JH,T$BVU/K)D"93J7L;,MW@FVO/TNM-8*+5^OZZ9\$ KL M>D4_E*N[MOM%U_/B0[%B[\6UO);=_5*6^P0R$N90F)X,9L*@@CG),APDV.,> MT1O6:(:(8Z4\H 7D=P,&Q, &L]8=(7'K&\MTV($_)'Z@15 S+]UX0]0T]1QL MUE/'+CEL,##R,O98FR)IB,;,HR4O8];AO,D+US-PF_QOQGG%?MS\\A]H]7=U MS\F1U]Q)2 \,W/P")#@3!\HQ,C5\*!>2:^9&V2/;DBME@I1);\JQ]^9SJ$Q@ MO>-3F7K.S$"063ZC'LU[V4!=AN:Z7->_;UJW2P_S3=GE1_O!Q[9EW>=*"J_X MZ)(XS#F+A+&0^@F,8C^'61P1F Z!F*3P? M9_6THU(2Y!9=L,6WC86 >,KX >@0UH(".C0MF=9N&&G)7O#,G*S6B%N&+MO MFSB"8AA!%M"H;*8:H%X<9)($<.II3'V9Y[$,>^1@Q&H1I@+2BS980E\0Q?<\JSMH)HN?XY]T=/BLVZ)?G3;,O]L1<)MH35OU-PR,P\B M[+;7GSE(,C3,/YAQ[,D949FPG?T\P$);)QY$:2Y5=LZ\G& 2!%I=L*UCZ%AM M?ST8)2WS6HJZ7K=)+O/'34[NE..HB0W^SQXS.9CSX6($MC.6/G>PY"1^_QRA MDG/LM18H.0M(?\K(S:I>7=._U3=5]?6)O*Z;WG^F.&'DQ.N.=>6-S'.7\KD9 MJB6LI*H0^O(KJYX*H2XGJ_R4F3"MZ2S1KZ>KU$BWF&ZB0*71')%3:\XV0^0, M4>/Y(><>U1,[RHK%F]YIW#72[R*>[\3OZ@5"*3]A=^>VQ JI-\_)$SK+UH87?BFK))U%:\64RM MX=J#OER"#6RP!:Y^H9ADP/E;A2W:-;W4)\BV?)E0(<[H1C&Y\&S7"A7RQG<+ MI>?-+!HA[UV-)UKV$R@ZO\&.T!]Z&K9^B'J1)#3"C.4PX+FP:4@J;)H0^Y#Z M)&8DBI!'M:I,+D?)M1M6]G8'99>1:NYUM3,$Q]YRSDBS\:/N.UM':-NS7NRQT)+]8@&A62T8>PSFRT:G[R]FW%MK_;!N6_)_8LTV&?O]ZHEU MN0"_H6(E_;N]IS' ,0]QFL$L34,8)6$(D1?%,$241ICB.*%:.76Z"+B^-!S4 M0H"]>@GM-EEZ_%736BZYINGA_?SZO3#WTO;CMXP5OU6E>O'=ZOM6"+%&-#$$HY52P\9 M2-"@A7T%WI5ELRH;19?$.1:. M!*D\?D&V/CY_^\(G;E^?UTTM;!PY2?FOK+B[%]KC^HE5Z(Y]87)$G/B]+!*3 M-[$U6MZRZB%8Y#&BC,493"./PRA..$19G$ _12%/488\O?YDST"#8QWSRF@F M]3-LI9J9\\(WZ/G\H2/"KL! &NAI QOBP(@Z(,FS7#CP/%MCL[1@9@KF+SYX MGBTZ6I[P3*@87HR[>_?@T6<^SSU*4I@@3F!$(@HSFA&8A"R*):U]Z= MY5U?:EM@FA?77?H5KZ7&5&E>.ON61@[R#H^38.M"N+OXO->]HX0=7.:./V4: MZ382>/P2CP4XB\F$,_XIQX/(AS7ZD!BDVD7*=! M]\# 8Y?O+U.&'MI^"(HI0U8W0#5&/2];]12&32R?80MTX\GS;H59W/@+>Q1_ M;8O-FGLYUF#WFU^OA)X!J$N5@RVVX+&WAM&6FE]LAH/ML>U\V-<"K)G#N_:X M(5,K3V&M7WPQR+.!?67L832#%-8,09@MB+ QCZ>8QIP#'' M6CV6CT)Q?)AL80(B@.HVUSS&%C5C\&)B]53\B$X)S\'(CDF"K#6R/ 9CYBZ5 M$V0>MJ"<>MB\B/56O+K A/EA&N4P9(D'H\@7XAJVM+^P M8XG;5&U*6/JUJ2WITR)V"4%Z4J5&BU')Z1CQBZI,VX5F+RP=HW^LEG3G[Z:M M)*OBJ2VQ&YP;0%,NCX-,8*Y[PO#TT.$I(''TE#+ MOW@4BNL ]P:FN*D]3O0"U>"+FLQ>3*V>L(X(;>$YF<0S09&U:3S'8,P\D6>" MS,.I/%,/F_4I>K7B37U-_V:027+B=<="-C3K><56C!=-/>[:8Y)/E1?]&[+!BU;M\Y]N12O?&E6 M?ZDW62K:HJBXG&/1;+$ (S3 %]:LJQ7X2SW*?5(7354FG1=5!_S1$UTUUC@0 M74W*C419%<9LHJU)]%C4=5\UMH$?UT+"OI:\^29@[:6[#R/>HR (:)C!G'D1 MC#)*(&(T@V$8XA!3DK(DU+2)ST-U;R.W.("Z1T+;2%9@G++1;)<=VD9TQXD! M_M5!O8L;NUJ=:'MVM@+,N>UN=38O+]2K:N+E9W;XKZL:S1LE5>X@WQ;])-'F#TL[A"M*&F>D%8C#$- M$8R\0'8DX0QFOI?" "/Q,\=YA.-%%Y?\VJ"J450W,Y*@(Z;[A*A+;!M6D4$D MP+:8MN/&JMT@$T -P.RN6+5)B"7O@[J:NF[.3R!%>1@D*(4A0@Q&OB\^ 1;( MZ7Q>ED4Y#_.4]Y_ VQ7]_\,',)#A:/N9^/4_P\8KGI4O="LUC]PN+BIW:(3> M%3@(GKMHN!XJ&D!%=)!>6="AI#5W?EB=_?HYK5\HQXV& :L,R6S5N MJNEZ>QPR\W+VX&4/LQX!L,5 I1!96Y]J46Q)$:K!G%6#:;%A7_7HO3SSA!RI MY9H?[U="\[6Y"77;R/7V'JWZ^HJ_"*4H*W:'G&N4A7[@9S#ER(=1$(00!8D' MXY#1R&/",,X#/;4S%^K.-5<'[AEFY^CNH9JR>U'[\EQE=1TM8$0,Z+IE-X*< M;=%=O_5BY\\D@L\WA<=P%YY[.(\NVO\<,WL,-\/:*!]3^ ;%/9OVPI\Y+PBK M_-[SS+,L]H(D@7XB^U=E+(0X#)DP7S/Q)TZ%R9HI%^N< .+80[]M5]V#!;Y& MQ<DTD+"+G6+4-J,I+]V2C.9E.TV*\TV<.]#AK M&KPV-T_1J'VF+=$T7.WL!OBC11A839UPR4E;QJ=-U.8U,!TP]<"(= '#=&0$ M9?PT$MVD'5= M!!QKX9%XHZZ/P:IL0+W&?Y-C"IH2H-&&Z(Z(T&2UFCYUR4 ]G;G%Y)2N!#]O MT $#/J==- :#'S 6\[Y.(C\ED.*ED3"*?VT%\7"]623L)!F#Z)Q^P+#]T>@,^LSW)7"!2)IF M$?-@QE,J_3P9S,*80X)1$*,44YQZ6NV0)L'-?"#O'," F5QZSK!/[=BUQQ0] M*=RY98C+R<$9:[';DA*)MKHO30.;MQN3$N$'W9G4WC)-RNXJ'?]:-/>OUW53 M/K#J0X%PL2R:'PL/90'VDD 3[$UI\3S#A&J5E_2KK+J D)QJTH60ZGK]T$:"WA2R=PX3%!G4/>JMZCI:TX5N M-]B +3I@BX])8:0F\Z;EWBW?-,,^FBQS4)5EQ@JCXBQ-4+/5:)FQ8%RJ9;B" M]7%&GUBSH"DA/ S$39E3!J,$(8AH'L.0Y*$?)6$2$+1H9&V9FG4P#4Y+IVR M*@M(5ZQ8;.!JYB*>896:@6"/ 7K*X5P@0@"?93ZY; MKW&ZJXPJ]RP&_2%!D91+,^E,KY1VE_?7OZ0NF9B-Y3]5!I^6T<+8,^SRA>8UZ4N C@YY^ MPC![M]J4O)M_O:L^;O/F@G^6K+<]G%TBX1.M5*->?2NJMK+LY?0"US_+>A&D M$4\YCU"<9=(;T$1Z RH88C'.PYBEA,)NYQSRZMB=# D/ZO*]/Q1M('"9RS>F MF6U\&^\!F*HT>P7P/*5[Y=A*_][&%X/)\ MQ:, %7Z6JAFQ/LJR))5?A1C+BO ?6- Q%U_-DA@+! M/(\D(O_K(&XZP;TEUS!<>593/B'2H>F=^HCQ1-/UTVI3W](75<748U8+[@L9 MF\2(ICA$. T9(K'@*"4\3G+.XBB$W5B>).,ZXNB(*B1\114\B_249C3#@XOE M!>[LO:@=00=XWN,BV9L!>HK(W),^1P0],<]S[-,76:6"ZU\O2Z9VQ7ZT4$"C M@)" (1$V UY2@2B6!XH(%VD:!8+X @2R?Y[4/-:I*L]ZRCHCBJ#Z MGKA5HP MLEFH DP-=T0VN\9[BM!K&/"(P&>,>.P),T/^5="ZP8:[>7BLUL]-0UH?GN$H M\VD1!RB.5&M%$!-$"Y_*&!5C'H>4QD4 L>016HY->4O9*P>D828\IBD]&[8D M/\R(=Z(/J3H(=#6DLV3&8Y1FM6,-D0\-6><1^)B-;E/_7-:,+O\A:/5IQ3_2 MC5A@7Y!<[KHH]F-5>Q_*@)EF%$5)$H0A]N,BT1ZY<8Z(8]OMR'HM74\1]CXI M6"*J>_T_JJ%QT[4E-\QFC40&#>V8DLEH@,?916<;YC$EUG"PQ^1G33?4NA:B MPQ5:W3?VOBW^^7W%%?B0W,D%__23R8]>/ZA_+7@F]UHU\R,B:81PPF.4)[A M(1:%'Q511ND6&.@.LN,:,*/UO=['W+@SV9+K^M_5K;Q0:'/0K=A$Q[J;M"N5 M&6[?BITK;\N0UW TJ/&[\H9<>2U;7LN7S=W] K58V_=->)@Y(KA 3<>QPB6+ MP9MGOBE$BN:*B3(29#S *,;R((^CR$>$RG_BF!5 MQZ\WI=HQ?Y.J>JI:K!C(]=V^%L8=AK%L, =@*!:HH^9(C NZ:79KS=9)<\3^ ML(OF^)<&DT7$^@M]$-J31-J/._Z^WW[ZZBDR@-D@G1CCWVM#"6#?ZDGF80,] M]MDU&^#1K3'?P(Y]IO<&=!S\"OZ-_;)>?7M:BL#/X^"ZJNZJA]6&?U[2>]WO M\-D%''^KU3V<(NPIRBC80_V24>9#N5+QIOYW_KPBIJW B@Y@=J$GOO>'XL)2 M\?:DE$;F='[5V0QL4K"AR4U_V!0M@:T?Q*_KNF[K#1K<61G,[8!GWXMBK4#W MU>?NZ$]5H+"IJ*0AWW7UCO.!UCNO>5TGV^XO_+VN?5NIG(U!N@;SG5J#:C#':T>I>;&Z%-+G5AMZ+1906-,FHW(*3F"#ISJ5G M9VF.?!;GH4]R1BC61LFTQI9C)Z[ 1Y57:/CRWCUNZ6H"*%M^!^-._/4T"_/7 M=OE\E1])K><^=':R+IN]H\X(:=CVJ&/6> M5FHX8H,L[K4_?^RPJNE.3%NXI-;U.8ID:H_:?-BGUC6TAY9J?W6CQ(_*'HGU M]?-]$V#';[7TM:&5_+E8 M$?#)G_'/.IKM49^#?6\]@J1ZO>*W\@NB M,L$?UP^T7"U8P GF&4,D9+%*(5!$6!HC6@2<9J00/HY!6,<.F'3L*!K"GJ+L M_=$2!%;B.GDQ>BF$UU8WS!U!-&U_0L8%JIAK&H8)BV]K\L4%2@9/N;B$%CP, M^OJTJ3=TI5!%OPFVEKOIR\V*0RYQSZ_@.A0"W>F."#H=X]B1$>96!C2]GJ@: M0,G+YY(_R6#'WK7PM'A&\(OR,,H$ M#A')LP)AXIO6;W\I_?!&;/HM_JX:Q-YF'#W3)GI8& .0.WJ]FJ/2J;PWFT88O M[!R P?[+&G"L'NIY'KRQ.89 V->MY5$0%AE\E8$0]A5\;BR$ TKPF*LY.+/- MD_)6M[3D?Z\_K+^+I5"S>;O*13 X)61-QWYY/PG3\>0IIKSG^M\:FZ:K%Z_G MKB_6U _E0/J;#NY#N6 OCX4*A MS&^*[0$YC(APV3WPG- ,(T*8Q$B48"1#$_SA!#NBT +.N4L!<<6T]!LAP5M$_/01LK3FADW(RORPHRI M%56A)]^NZ[(YI]KLK1R5YH(^R]/KSM9S.2K6L/]R_(.VIQ?\7HOB:?EK68B% M/"*R5!0)XFF.$1:"HDS0& D:^6D2145*8##G&D0=6^5_BO+^A\J2].5!BJ;W M3H%7U)IEMR 5ZL65MA4#,]_1"0=77LM"HZ@Y!AT<2^Q\W,& Y!L9>G"L!/W1 M!R>>-40HY+QQYG2ILE4WJP_TL=S091?,A86/"2;9,*&6T MR%,AM .M*BY+HG:TF[RJNAFY77D@1B%HQK3\P76] !S H5*M1J]?_D/P>^; M@H?VXKO^43XV 6A&@XR$.$!I%N4(QPF707H0H<"/(A$E+ @9R/3-V'#L$SJJ MWI"LT2 #0R7K9J1 W3C[L.HYH"W[+AP;P5Q(6FP9Q @*W<5KHZ=39Q?("XX6S MHEJ%UAB5RBBG=GK%V3)KHP(-\VOC'S3IUF5TM1+5]>/CLJ22SQYYEP=%5I @ M0S3C$<*,R4 ^I1DB1[0<:''>SW//#MCY^8X]_M]F!.?-7 _=S]$Z =A.Z/U9J7Z-&4DH=H5NF\? M(VJJ8A C&B>J)B5-$*4Q1B'G(8TCG(A 'P-@BIKKY/\/X2GZ7C=:>,N!IU@ MF.JDUC2\E$U= "\&1M5@XKHF]0'P83;UU0*4>S8]^$TO#RQ;OFZ\?FEF4P_V2/N^:VZL6E[F%N5G)R7G=7[>29%^^/[K]..B),E6%K MD!N4_+S3W@R5E2OO]^\?%2A-BS(#O 8^IR4])V)!=IBO..Z4NNH[ MW^QY@PFI+!G].2JSVO:$J(=58E^C=GY):P['WGB>7IX:K+[UP_K M:E/^=Y?:PT)ZFCA$41BI=+&,:&A(N QK,$[B(@A$ROIY7Q=[H3-,:)G3_IPO MF#L:T/6&A*VYG'/:O=CS7*(Q!P[HR@.KTJ83FM"&>U]TCH&WXI(F% 3P3%,K MP_9%3@JA/(L1$P/U< MM7W$6ET?4X0<&T9+VAO05L-?J==1UY][.ZJL<2.RJ0)@FL]0>M (7!W1C,;@ MCBX\VRA<'?&&XW"U/F\\ ZE2LRL_BO:_-RLU!$*143F!#T_U9OT@JNUDRP6. M/]*=GQ>GX&4W"M#J4Q486]03,@ZG,/CS%1 MS8F!,$;+P(/?;Z+>R%A:73)^7(OZRWKS30UIJ$0/@PD&)--?T7FUPI81CTM. MO-5Z(UU*P\L66%4_M@9H:CKT=J,DF",9ZD?HF)EK7 [ M^S[MKDW[FU W'.7JOG=S3W2IAGD&BR3->$AHH:H/,,(AY8@(^<\D]'%* \%P MR," _F]"--?GHQU''JW5M>EW^>5LJN*\R+_RE*T8S 5X$ZJ#3!-X$PR[<^*- M *B!C#\8@C*8BYN_>,//=:)ZC:Q77B?ME=?*VUP@]Q*K@GOUXRMO(/65=P2S ML)7<&XC>S..U/!'A3;U.FW,4WH9@\T]?>!MRGXG#WR"'-CK#)$-?-S]$U0(> MBTK53S\JWK\_Y?^4?-ZMY5]J5I6-%%WE?5[(_\\(1D'&U'1>!38H?(P$CX." M9#SCN19@DSV6'.^@)YJQE&MLV/1Z/KTMHYOFI;'^I8GM2ZN[EZ8>'0CDK&GO$KW" M6OR,*+UB0^ EFAEO'[QH9G">UR->BFY&\NO\N[IM2^87(J!]G.)4;E:H< M\8,%O+E&"V^E?.TIFW465*W*..E,D'#.O!UI6,>U?MY1E[N9/Q M=*WNU-:K+=Y(,_#\COY]X.[JT:/GQQ$_VHYD4?B_9J+UW2\F)J/]F@(,-T:Z> W"D M,YA+4*2\=XJ85$K'D=>SY UXNO+RAAN%I6VQ_ NN UMU7P#*\Q9\P55R5.EE ML(29S[FMNFOE[YLU^U<[(JQM3%T4(DWR,,6H\ /I8A@.4482C C.(AY'11Q% M"21B.$_*<S5BO)5V_$F0_FV 5?UPK4_ 3;!C>A.SX'8T0C,7^R4\;U5 M1C<6KJ5KSS%,RV;)#XP0FM7LIP4^M'*-)TP1#O/-;IC7%\E_6X]SG==-^FQ! MN9\P(1BB'&>J'8ZBG!0Q2K(P\VF4L3AFBV=1Y6M]-,-QDI O])"P]OS Z\\G;$O3]Z\E8!"?4DM08] M.$%N9I!!/>&/X00UGS.\H^ZOPK\6G\L57;&2+ONVQ^T76; 4I^KBF.=ACG#N M"Y1%1:)V]Y"14/AA2D"WQQI$76>EMS4;\FR\96*(S#_Y_3?7I^:]JV4M 9/* MERL(?C4)D-C6I:$.R7FO\P!*.+IH@SQK"'>NVD?>4_8O&85LW5*7QP_2(.18 M1(A%/D8XXQDB6>PC$A0DC$A"@Q0T2&N$EF/WT%!&>4/:J[>T@3CG(ZK2#M'4_Z]>Y\+GI-,6C%!"4T5DEXL M8_@TB%%*,",9R7$1P(SZ+"G7ADV7W5WY0T\8:+?GE419Q'$>,S4$E"-E,DUW9^7; G1Y+KQ//V4TI!H(OQ9%R405;DEZG5DO1!0E'5.,>.F:DMD-2D#NV< MR(#*,@NB7UPK)K;:6/?:L%7@-2'>:,G6N6?G*\*:X'ZOK&KJL\:]Q>TPX\YS MO1XA/T7'L<+JIV6IN M^&.U?BYK,'K..?WHQ0<6I(;YG<&8\(ZD]ZXC>OY2UZ3%=TPL>ZV\)ZG,W;([ M)NJ)UMS1CQM6,ZY7VR*_ED*W_#;U'G*!:92&2-IECK!?I(@(GJ%,!%%6,%_X M&%2C,$G1L>&V1=YE^VU^)UK:;;73OP.K&R=UIV?*5C4",^HA::^S\'<=];\Y MN;'0%M96!>0DO7DK(77%/ZJ(U'[PTI&-7];M6,CK)MVWR,(PC%C&Y6D@$0@+ ME0;) HSBU$\+G] @B+4.!U.$')O]CJSIE,4#O>C9M@UI82:]HZA2E-WHU9:H MBTF)I\6R/@OQ@,PK33L\+>SY>89G/F_S[N&X)_#]F9[ S^NJ$.7FJ6K:)J3W M**L6\?=F=2LY7O-%GI$L"@.!8I)2A,,@1SEG"4J*(@R3B*8^X3#H2^<\&Z0# M87[C@^HS65Y2P^C^O5UR@3+WNWCU9O.!&'W'>2^(@C-J17%]F>- ZT[OA6SR M^P:NF!RH7^^VR@7A"W:3'^NE?*)NQUA),D<5+K9[D?J<\&"Q S[ MC!.4,5%(+Q?E*(O\ -&\B%@8)/+$JP76_#KLOUJ%4+5C0@V\DIPU\?*+H!4T M7)[YA>OYV;?[<#Z7-%3:T,?=RLF&X ^E[$QMOQ?=4%RJJ+U!OP;G'6UZNH MW-8(L7F9GWF.,(TI7F6Q%J[DB5^7&\S0'0>Y9U:/KV;E==QZ@22Y^P+&M]%7D'M MP&W!AL;=HB&=5;T3*"0;K^#BVA8HX)&"&7YLWXK*5;9\SP]W-*4[2UA'9\F\ M1:"C*9T8HAQ-+FMVYOK6PM]_EM*>@O_^]),MG[@J3U1 (7++;=!24M\/,QXC M3*-,;E$X0UF0IR@,:$8QSO(,@ZX)#7APO"U],QH*8*)+O3.)8PW!=I".&4]9 MR-F1 %N6O)XGNT@I%VC$4MQOPL&LP?L%*CJ,P"]9RC!GS7X(_J1FE^ZN6&]6 M]:9J]MFZ!VZ1SO!45Z>H&EA!J:9=EE6P*$E)3%$1B!SA@&3IY?1$D0)F&6H2*/57=IY"/"6(C2F(@P MPU&*PQ1VJ+R$'>?GRWWFO/53TW8_'#"\R\AM.>RMYH^622#ZSH4O2/>D.I?: MH8=6MQHW.,#:4)2UL^Q%S,Q\K+6AN.,3KI55+\89:U>]7O$3M,PALG16=7CE M,$3+.FU>;O&R(.+;A\[2HOY:*%H0U8P :H&6,:P.*@K!-MM5[^C/;Y*\2E&4 MJR<9RW3XX>M5O5"U/"*,$R1\3A%F-$!9QA@B&6>,\BQ(20&J[-$F[3AN&'2B M2H+RW" ),W7O= ]L=0$H4[-JQHF*8'YFRT/O5E0#JV*C27#) ^NR[&J8;ENU M6:Q@ 8MOJ_I$G_"\E2-@A1Q5?JI;J^4RYX%CVYY &8H]-6JF;)PHBQ@#D/J23'A]5RH5I1WO[=*^YNWY<6[ MGM8:/+,!5H"M5(<^X7ES'V"%'"5#X"N8.9FO^RD7E5)=9(3D:1)S%,5)B#!/ M4D3R,$51EM&4!3CQXPCB34[0<.PVNGVVN31:;_TQS$^0[A07ICE?SU* M739W+/:L>T0:2V9\BL*L]CHBXJ%ACGUTYI[:?D#1->=EV^/;#A>X?MK\6%?J MUG21^D'J8VFZ@N$$X<*7EIR)$(5QD"0A"1*6Y9>#@EKAU?4M&T&=:+IL;ROD;;C5>JF:6Y6V\*F!&YO(FV]WPM)T _?23G0AOH+E67\^O MW5:KP>E?HZ%67^766FD!)"^;!?E-/*ZKC?):VP&'N, )C2A'L6 $X2#*I0,4 M":))1+,HHIA'H*NK\Z0<.^^=35=;TA>.@SRA+LW3GA4E $]W6_EW5!U.A#PO MFN61D"<(O5S)+!3Y*;U>QUA3\T?NWG8"Y ,+[X M]K04@9_'@0PI[JJ'U89_7M)[G">.L!?NW^_7S_R\W_>K54(WW7N:1K8\9..C4L2E.?7?S[5FQ:L9+,V 'XY M(_.T55TF+LRB)B2U.,!H7#(C8SJQW&R&=%Z4H1&-?,IP?#DMJ[_3Y9-X_[+] MZW^4HI(+_7CY53Q+>7^6\NR9Y33.B0Q20RK/GBSR$4VI0*D?T2**HS2,06=/ M/;*.K5)1]AK2WI9V$YY]N?Z[]X=B %CZJ*E,O6C5OHI@EGR)=N 3R4'"VAI& MKD=TWCGD($4JV$H^TY!^[R<@]C'#78]S,3JL7 M(@DR7PTM+ABF"NTM0ED]=S]+<&0K-3:3\F8-#VN49-I 1T9*>@[$@._ LA-; M453>X\.$V/"9J>-"V9J7>H;*O+-2QT4]FI,Z\7$S0_T/P>_+U?U'49?WJ_:J M3L71A',2QWF&! \RA,-01A1^@%$09CF1IY.RGN:!$GBI D[[F8MRQ$_EUO;I' M\KF';KAH=Z-N-C)]MI>IYYO>XBN">3LEP6"(^Y6W%0(5ZPHI,:Z\K2 -/NH> MLE$KC-=+<^51)8^W%:A!3&U%\I1,[2#I5BJ; UKF?0_6!K[,Q/;, V3F?1G' M VEFIF]XPIONK%7T?BU7XF8C'NH%YFG.BT @GX:\A47-1$;DT8_'H9]$E!<, M=/0#,N#Z3*C7AM[C^BBVO(8O8# *UKOF8=*A-H&G3/N*A)]"#;5AZW@*)3_O MN=50.4<'6M-US!R67/ZA;*].FRYGU85X+U9,.MF/93#TPQ01EL4H#1-&XH!%?D!@(Z!/$W*\0?=D.L0NZ$W1&>7HW@5= M+C+TMJ>GV&V85]M#CLT;G7&QK-W9G"$S\ZW,N+#']RX3GS>L*BE7Y4;\*K=( M%>[+5U[*PT%[9_,;_:<,]14(SA>Z!7WB,0LS54\21BQ%6 A?#2*($4F*+&,^ M%TD(F@0&I.^ZSJ3A!C7L>#M^NKO+*Z]AR6MX\A13AL!;4*7K>06'JH0Y"_M: MA%>IF.G"5KD*D/J\=2MFJCDJ8#%(9Q0@O((JW^RB(0R0HDQ*%7MDEG' M#G"("?WM^^\]:@6P"\3IV])SAF_E'< \Y^2(KAV3[6S*YGQV]$/%^]7VW]WN/U_SC=QPU+;TZ2?[ MH6SG\[K:PD?\JHJ6^H:BET4A:(!S$J.8I;D\C184Y3%G:O9YRFE2^(&,9Y]% ME:^U<6;-N8$XEB%/^K>/3<7>7O-?5=;JZJI%;&EX5?^LE!!H7: G5<-G4 MY MR3O1\_ SZ1GFP+_U>I-LM?&NUS.FZIMZUII[P!V 3/M:MNQ9Q)2]7$>V &4O MX&1>--G+578$)6MA27C3U>\K7BU?[KN[OY??_K6YE=Y8?/BQNK]E&]T&K/%5 M'$>CDKB0U)6)] S(PZ,JF_ :+KP/C?KTF[(F=#+N>.RJ ^97-#5A$Y KFDC M,Q<)FM3NZ5@K:3S/OI&5'"PUFU6<%F%H!6<^85K>OVU#_2::&]R[]1W]J2:* MJ3Y_Z?54NZN]:P MF]Q+W_'2!.\*27K KXSRE^7]>(NX0?/"Q6JRUN!@SLG,31 7J^RX4>+R)9W5 MQ'7( B3-.2FB#!$>Y@B'0B#"@@!% 8F#'#,<^Z"F;VW*;ZD*SGKA6Z?<,.$T MIPRC4(18*I>&2.XX&:)9(+@0-(Q3#DL1.5&O44*H08-RI3C-S<"%,F"N__KK MAQOO>K.IRORIKKPQP3B@-8W48%/[9G(S]33RT2=+! MK,/=[J^Z7U7*^ZY\4",)BN_RIW713D.5#Y1K'BS"(DD4E#<*HIRIP;/2H211 M@,*8Y+S@61)PX&0S.XPY=N9;_M20DIY!;[WEL!E>(ODPFK%]^5O1S#J_@JZ! M*>B60W57V.M[P.0@4+WR>CZ]EE%U;ABRVF23QEZ(Z9!N:]JS.[G[8YRW M-66>F?%M;_V+H^!^]FPWI.'S"9YB((A<@Z'4@?<=.M)DUH@A[#67HT1ZH2W $9UM#P#AN<%P8C+V^\B0[ M5]Z!ZJYFB? @"K$?YVE1?ZUH#Z*:D9@/M(R9"_K]^R]K>;Q:->#B?<'\7E]= M9R]%EHJ8AP4JLJ) .,THRIF0D1WU?9YD?AQ'&<3WZ!)V?0_W;]__S;M3R:^G MJD46N]^RY=&.+Y@GTE:IG@MRH2C@#=UW;\>"=[WMEMGO*';@;*"B6_(RVF1G M=2]091SZ%?#SQE7W,HPJZ?)F56^JIR:Y^/7/E> ?91(!2_*M,>?8 M,7U>5Z*\7WEM#S)[4:EY=>/AL8XOH%>R^E[T/-=K:1OFW;9<>@,VK[R&474S MLF5U /@VX-;;L7OET8VW0ZRT6O)O79'V^@'LL39WLX!UI9[H)+!/ ^:7N2@7 MGU:;1"/RBG\N@6L M*,(\XA'W49QF0G4L!HC*B$@>T4)*(B(XP0(2'DV3=&S$/0-77L/"=DQ)P\0% M4" :NM0+:>QJ"&;A%I0#CCSTY;443V@0G#5*T%? X=X/>-*P<5"YF_TO<111 M&L>!0#$5&<)I'B.:A7)7ISC.8C\(BAR$''1,PK$#V!*\P-A/Z$7/N"^3%F;, M0$'AS6MG9;'5'U;Y1'1F-2J7/+CI; MT?246,/RZ6M2,MM3YX_HO,[L^7/B MGIU ?_8!RV?8W;[!@D#::%*@, N)NE<,$?7]$!5!ZJ(#OI2NS[-OA*Z@KX"M$^SE^[O*F1HXH4F M\[U\42,;_EXWQ=M-YT$[#?7;9@4.M6&KNBYNV@M .Z[:X2#/];]Y[>CB 6O> M-[%YJ@!#&8$ZG [7W:D/YBX,-><@N#?3B%'(#R0UVT' 3 7#XX'A"C"G\E_R MZ+'X]%.P)W7%]K4H2B8JW)7=1 7%09*&*(QC>5Y( GE>B'.*_"(1<EPWSL>K<^: M'7'N*KJJ"VG":GR[J)Y+UA2+G[KYOY,4ZM._ZM PI5_BV$]]A ,1(\QXBC*> MQ"@1G+.<#V(+W+[N/=*@&UZI"\E.##S&LN%+E57<_ MZ.KKHUI"3791@-."_Z=0\%6"7S^+BMZ+7^32FX]T(W:%CCR/0AH*BE*1!0C[ M6"!5=(HP]9F@>49I$2W:WK[O&UIM]-SR6Q -XF0.!=3V-^_%?;EJ^O1RNFQZ M]-Z5*^_W[Q]5/V0+[@'L;7\+JELD.,EP%.>6UKQ/8:R3VE,A.ZK#?TBNT5<;Q M%D2:MW#D+4A\KE3E+?%F%K;]ND/@53&D@D=NTWIUR^/V3CI,"NXG<80BRIO! MR2FB@6"()90&+!4XP*"SKBYAQ^?87X<(Q*L.MKQCY'__+Q(&Z?_M/!ULI]/6 MJ]YNY$);L!WC4%&=^W=Q_0\5UI)OU28[J_^#*N/01X&?A_F1NMHL?BM7YJ525.&2)<1&$89H+Z6OGZHY4=>X*.EIZ9'XL];L<7 M"0,SU(Z,Q?[>L\R/&9Y\:&!T\E\[@SM>;Q:+.BM&;S+G/P"_(UWNTFVA=_YI[5 W3E]JV- "S($/A09?3.I(9 M746/+CS;Q;..>,-K9JW/SYR8[$+QOS=QN*JAZ0&&UNI'7Y\VDN4F/?+EJ=D! MDI3D+& !2@*1("Q"BDCF$Y137L1^FJ94@,#4YF+ M-/FD)H\$Q./JQ_)3.YFNO%:J-Y#Q,7P/ MKYW5@;+]U\C<&+X,:]D94_H&14\=;$@_?J4'%:CESW]Y?ZMH/U7K[H1!XRSU M\T1N+8'/Y?Y",,K2)$>9S\(X)SX.]4JOH81=5Q)TR"G;B41;7AIX<\E-ZTDD M/X *(HABQWV\2W4!RP'T-652= 51&: 0RY'JS(JS;E8-<&2SLPUF%Q2=9D6O M6;:GV?>WOVPU:ZN0RT MH\5=D/7F*_@RD'*O",SD>?AA_:[B:F>1ANZLD*.G:?%\GHL'UBN=F.V.=% M&1ZL1SX%MY/;Y\>FW4?7.OK/.[8)&;MYS_4>MO3'LF;+=?U4 6QD*]VT99@( M!K.'49FZKBM+?1*'PAA9PG:1V;[_AVP/O_5'OS-+'?7;C9JP\N&IWJP?1+4= MB/A%LMB _:F6YB)A<4(1(WXA(W,:(QJF"JC*(2D MPV6@U,!ORY/]:DL;EJ[15:1>ML6!>F#&V3/@_2DY\'H6KG9S4YNRERE-@;,; M0+DM)2=TJ_+&IW#4+ @795JYFT=* JXSU^D(WB"%"BP]8'W$V1? M:7B]GC+.#Z+7?/YU+K &" '%.$@C5&&BQQA!33' M?/EFX_E*X%V_V;]LE3OPIU>3>[>-1/7HO4#O)_.U<2P)?P1NY ME=3E^B]U*0E\%;;O)*'D+P1O^U5-&?ZFZ'PM?J_%=5V+S2+S24A2/T5%%#!Y M6HD31%,U]CK.&,V3G 8)-P)P.T7-\1%E!VBV5,1K#WF58D"A03U)1T 5#X:P M;B>5I^>SK:D$YFEWVFCH7GD-9;0ND*3M78_JPASD;4Q&VT!O)VF]#MC;F-AG M =]&'S*&1_TFF)HU\P)*[I]ZUK&U;@%"ER_MSGX8$?3,@ %2]S4P?0%PJ? P MN]26V^[%P)B0ER"C[B\X-RKJ27%.(**>_MRK'^&[ND3NLR3-:8JR2.Z_.!84 M42(8\L.,!/(MU^7^Q0MP9ZNTM552 M.T _?2YKN?+G=?5Q_91OBJ?E-6/KI]6F7O" !GY 0N2S/$28)07*DLA'4K.Z_[A1MW'5/ZI/_[5YN?ZSXK7\,;]9?7BN M^#^JKGI9%Y'8<'W'5O^A+5&6 =0.-,6CM4I9J?X$%64UD"H-H'DI'<,_!*WZ M?OW&[=9]BXYR_M?US[)>I&F2B#3,$$YR^0D!L)3WAZ(,K!0:U9A>2&-+#S!O8Z0"<.RB(YNE MV&64U*RQBX[0A[&+UC.6QZT P8$FUWFU\C4'X$#:PKJ>"?(Z<$#:XFM/!+D0 M $AMBBVFV<^*M74IFN'U_E.NKX[T2CNF1)L.7\VE IY\%1WK%2OG)3"*#0^6 MFBWB.RW",(X[\PD+2;D M69(*FH9Q2J+%1HWRT3L3:M(%.:0M=>WO:#L]:KEC 78FU%6>7MCM0"4PI[4; M#S$$YQSDJ#2Z8,'Q-U!J2U&X+M598W&@*@XCMJR6;+P\W1FM>E)<0^M>/H!4SR2CT]5 M&R^"L$CZIQP;W;"4I"<)A2/9"CA]JC:7#696IV!()L4S0" YE.0"])'M4C,C MCQR*<(PZ9PQ4$^U"1>.C5"QTU33K0M/ M[G\/ZY57*Q:\S8]J_73_PQ,=8]V/'SO6O$>Y#+#LSN@EZ&V?SE4+\P$-*:_E MQVL9\EJ.KMJX^LKKN6K'!7@]7TT2W&)YW"5ZL54"9\3#O&5NEZCIJ)3MHL7L M.[CF=UV97)_LY0M2X"B,XD(>[-6<,Q[E*.=%A@3/F3@M1S; MT^-:H?1U26_YV_;'+;H5,!L 5_OE[NQB95IW9>U'.I:V]PE\'B\VJHX9/-AI M^F_&>XVJ!^*YQA>ZP&N=GFE3A'$F:!:CW*?21R64HCQ/*$HX*_),%$$2AV#W M]!K3@4Y- Q(- _]NX&LN&0#T&B-_6CI7WO5F4Y7YTT95URJTU%M:N;K=GVW8 MSUL9[P,?Z&-]A,_%5?R3T\R:J67US:KU2-,3&BGC/,0B1HP',KS)28Q(DA.4 MI*D\U$6T"!F999*";M\[78RZW+]-=K07+W.^<9XFC)H6B2>;[X+)H/_9MK?,RV7*F3[ MO*Z^TV6#G5ZNGM9/]>^K2M!E^=^"JQ:IVW5=*F9_%76M6 _"W^0G?]2+,(XS MA@E#2<(*-38[0#3%"M^6L"+(HSBB6O,FW+#G>"O5\&MSO .]_>_U- O;Q!2? MWHY1>;+H647%ND**V2MOQZZWX[=MYNLYOO(4S^V^%81>R[;-VG@7ZK1636^5 MN9GK[UTH]KABWPD5,Y]\T\QQ;C:'111Q/V!Y@I(XY@ACP1"E48$R/R=Y5 @_ M]0.(0QVL[3H?NZ,$D(P_8;9S@W)+-#U>>U6!/B'1H;:<^ M8C!90HCJEVK]]-@D,*OZ\VI7@Z,[;.+\$HZM0U'V&M)>1_O*^[Q>;U9KR(B6 M,16,FXY%Z6%F-":XY7(D31G-9E>,K#O?.(MIX?8F7&A\'&Z&OVVJY9VH'NJO M15O" ;;"\RLX-L+?Y$&J4K6P#75U-7BBED??&D/E<\B>ZK&'P%:>>=5T5N%QZ YJ -KM3 M\\"<>6==2@IF=;(RH9MRX[@L+L MZ[@)SYZ%3T[JL%01*TS[8 M)L]7_'MYORHE$=5NWF(]J9J4];)DI:AWT11EE'">)R@E.5%=* G*E*%&.68B M3U(6QZ#91Y\>CMF MO9Y;6 +FHG>CE[&92^,P9])PU4(R[?AJ53VN7T=]-#:T9"F==!$KL^:?;"CM M,&%E94T#G "56!9B'\F]EI3;-D#1_'MG>CQ)TS2."VA_I>:2+ MOW'Z& 7.-&B&7'#W0WCRH;(2'M_-R)6N?[T_W:/1;-%IMOV)PDU=-M+8 C@P MTLTH[ %LQ?G $(PDW8-(,%O!Y'9A#4N=;!]P?7/PZ2OD@F"MG1@Q$@"8_/_T MU7(&Y(AIPVS^>NY55:].9+ZGN M#3!W4#NN(9ZU^]CSE&:^GYT4^?B^=OH1TX[UFQ7_0A^T >#V'G+L:14):']Z M+\ZTNS66!&9+)VYTK@89:6]42(,N]0.!+FA2[U>:N4?]0(#C%O7##QC.RU-E MGU_6JVV\V1I9ASV_R'TN_#P1*$O#1)[E\@!EHDA1&I(D%R$E.0?5_8R3DS>N-+TMS9XJ8);8:F%(N(>@>=?1MCAG0$](6Z/R MQHG-.RM/2_"C87EZ3YEV/=)-XWB_%B,]?2+U"H3;R"]+F2_;P9WU%['Y]),MGU10]\MZS?\LE\L% M]Z6G\'V!$E9$K>_(H8]>Q8Z$=J%L;A M:NA,BC4F* MU5@GE36/.4$TQU)W/@](%I(H9@R">FE==W#(R]ETIYM#L*L1:#)AJXSK3AD* M_>_=E@6OY\%B^ 41V5J"08/DS)D&?24I?#^Y4ZNV S]("%G.4L9 M(H)G" =IU+5?4!S0(FO5/?JU?!;YG'(P\*' MN TK7#EV+(/&2T466'-D1^]ZKF9V;<*,K;R#3VQO+#GT/KPVO M V7[KX&>8_@R;,]V!],W**UM&,BG>\H%I =F]:RAFW/^4,Q< 9*N@!8[2[-ZU4G4+F MM\J[N_WUT\&[O_+^[+'I:(=-=]]@TW&%35X$:!2C@\5T 1_<#N.'G'KL CC83.=4J M+42P5PZ0%M<[I,5!#+__;;95@O[6W_-HM?N;97Z^POHWJX*#$/&OP:S)2-=S M@QYN)0'E?.[%U^+3LFPN%X9B*W"Q+53V(HU(+@*!53Z#(1PP@C)?I*C(PM3/ MLZS(!& "K!6>',=JG[[?WGJB8T)MM(HSY=Y8SX1F$:[-UZ 12ZW?]W M!G*UG=XD PO)X]+[L]S\4.5(TN-=J<_*)\<&.UD;U6OU98Q/]K5#:L9!P%9U MLS\WV.[2!IA#:G>N/RS7M;A;_[9Z+%6GR)U:%(P&IK&4XQVIY#AB09C=_I>T==+8WO/ X4!-M5='7C_=%PY%G'#@-(;X: I+'^ M?(!(^L+NX2,!'K.$2M#/(WZY6[\7M[3DUX6TO'\(6GV67Z6%\(.LR#%%:9)1 MA"._0+0@,0HIS0@A21*&ET$3C--W[##D%RAK\HSJ-"*HHGQAR_V$.C7"4[=* M I97G88MN-K.(']I8A09VBBFKKQ&@Y[BRU.,N=7EA1@&]G1J%E:ZTNWE" 9Z MF@'#&$PL^[I8!GHR3P(::"X#C],^JZ$1UPV43?6/ZM.*R[#POS8OUW_*_>*7 M:K7A-ZOF-_7G)?][O5G=RP"1UQ\K^9?GBO^C@D$BV*'FV'G?5N6Z,XA/"D5E M.\1!G;(YG\M%E$PL)L?&N'Q^7)6MB()6!4H:I MI"O;F8G=7,4/ZV>Y8?!F#?TPTM)+G(XTYW]_L'WEK;PZRY@6=M5N% 5;8F&V M0-FNRH:QM.65+RBGJP=9[ 4F>1J$.$2,^2'"69@B&J8AH@G/PCB+>!R'B\=F MA-#W#:TV@.JW(1V([1Y2TS;C]^*^7*V44>5TV0 M75:=MJ4?+FSJ:FGI9\F;ZL9'&AH?!^P(C/,K;>D9$B[ M(V:Y4.V4'#8KRO;6G[_TZY1X)VNT3G[0S$5]H(_EIBTD;I**E&T^K.O-S<.C MW)75L48-S%E$\G2,(QJBPN1)'H$95+:J. \@=,6^I M"O$KT9;ERW""BT)455,7T#(G_U)#Y^'H:5;/BJWK"V;9 _)>3]]3#%QY RTJ M'NP9/$AD2TY C^:LC@&DAD-G 7O8X/K@_G[SJ:K4S<3UPT;[IF#O*=>7 O?W ME;A7)6*2Y'HEU*RY_7+M!X4 "[@,V)=9(^]O+"XPQ7^AI+!T_DFAS#+W^TO- MEZ0_*<)>/O[T)\PV6M6FH\SMZ^KSNA+E_>K#D]QB5NSEHPPLGZD":A\4R'Q9 M;SZ*6GY*;4G7]7\(?M^@VVP_L."8$!82C@(1^@B'48IR/\&(BS2BN$CR1*_> MV!%_CLU:00'*5;_YDG_TG'K]>QZ.W[W)E%+CKT=RQZMO8[IX:?L!1*.U&DI MY+#-W:S!B2/5'H8QKLC '#D7Y>)7^6U;WOZ0NVO7[9:&61XD$4:"J(YQ%N4H MBX,(B3@L0C\OTB+7\L*G%G?L0AMR7D-OJJUL6@_CGNU2Z8#7EOJ":3N3,0E& MHA[Y6.L$Y%]VMG]RL5D,=TR,WNI&/W/1&4%:YC^$-$[Y97TH5X+#:XPTUGKM M\X3:W21GWHXUH[/%>5V!3AQ6U&3Y''*L(0>S"B$ZN/381K+?50DH3S2Q"%+ M(I_YL8"@N>D0!7D*.)K;G7JD W*#'3NT-*9WEK"M!Y@KV%(?1O977L/ E=?> MWW97O_;B?8C(EH)X+9*S1N80)1R&VZ!G#5&T^[*9#JFW7E 1%XP$&_/B>&+<#KH_7GQ;@^)]X1K/79#YHB6*"^(G M:106#!5AX2,L4H*R7!0H$'G@)TQD19(L5DU3K@'Y=\[;&CBX'C21;+'>6Y$DHJ%1L.U&R77\M"LSMIGE>H MZ<_>RHL!ND*+.%X[$?9[JES, 9A#VV\$K6N6VFWC_-:AN\=M4G6S>2!C'-?9&C .<882I#3!)2BGP_#/(T"3*!0>._]4D[ M=NL??J@74:LB]=T!L$W\-.UERZXMI!3UOT/1_+6UJ^>DW>@,YG%['KQW/1=_ M4ZK;'2P[3EQ-#@0JP-X@05W"<\\5!"KDQ)A!Z I&.0,U) M;1-!%Y68'-S@9@PVS63$#H:]I0LI@-B]]::_,@%AS@3 M;*8M[(1"4OI:?&B2)"T@10M"L>!%'O$B2% 6IRG"(@X0\?T8Q04A448RPG/0 M3$-WK+HV[RWTBF) I92:7-+5 !3&X-CFYJ4!SFRO_BIF/[!M7^1M_R); =HQ M;E=>)X/ETYI3/=L\JKEA=/YSFE.%GSRDN:5H@/DAERC6U8/J/6LLX9N0D5BI M$/8:"K^ORDW=]17S-,JC/ L1]EF$<)!EB*IK %\Z>U^DF 54'\).GZYKG[UC MI,/PW+'2FKO7, , JP#H=-P+.]04,*K35-)TP_1EWT!]2 \W6C.#\KA9-:PT M>]"@B>SQ2*G53JGM)=238M,6AAM<):,8'H#EYL/N@,NXA]EA\+A9-'XPN^5@ MLLMV(MXU8]63X#,T"3%+01DR M,S8<>V2-FA^;.@WB)&4Q35$:$2&WM3A%><12=1V%HR#B@A-09=D,.H57G\RL M4[W#A7M-P78YK0%=N_&B'5]>SYB]T\!EBK$4Z1LR,6L4?YFB#B/T"U>S/*U4 M#3[\N%;7OPO!"I&JW!5/<8XPELZ*D%PA@\AX/"=9)%AD95KICJ9C'S\RF+.E M;VM>Z4"+>D[)LFY@'N@"M=B;6'HLJ.N)I0.*;V-BZ;$*M">6GGC4^.)T_2"V MH^A5QTV3,%"C=X,\C ,D"6#&H."PJI+WU&F*$BI)$\2P84$1%PE/E8\)33(BQ D#VO M*XYC-S48P&AMYMC;4-SKSN-\]2EBLTWI'$AZY1W5>?;2MA=.;Z<*T.:0IUOKO.Q&F6)WG, M48H3AG"2!BB/?1_1@A5!DD6I[X,0NHXHS.!$^IH8N,_8UX6^6S"6$&[YO7 6 M<< G);%HO/OKSVZ?)\4[98*G/P@O ?Y-4&6P3;9'L_QW\(AC8^DH:=;W'XHS M;AX72 (SBHZ(M534&<:-2GF'Z\Q6QGN"^6$)[ZE?&X*D], *S75 W2W,OZZ^ MJ0LKU? I8^ZR_GVUSFM1/:M[JYO5X]-&_EI*42[+)E)__](\_F%)Z[J[%4ES M1HJ$^RC/L-R$!%Z M4@C;B\1G.,RC$.$\2%0!K4 D8 SYC/ T"\(LB$'56^/D7-?-]L3['H<6+,.C M6P;,(30F]*A[D6]+.S"WME-,URS0DO9VM&W>X>O(:.WZ?I38S#?W.H(?7]IK M/64P?DW*L5X)Y5Z>1?7R\4GH/Y ,LJ@TT9@RO ;)08@,Y\\\+@PN\- M!3-XW"Q4:"*/]Y3]2SJC7\.#56R9@\8&6\O2B!-LJ,3@"H9;\7N4QE0>C MC@7;\)<0B2U%#EHD9XT?($HXC") S\(AY#^M-N7FY=.#J!0L_2_5^L_-#W7; M2E7@@.&$/103#T&H(9(=*/K3L;.+V&<$.<>IV/FY;G9S M$H+VIDB12L=((R2L(LS_,X#0,@K+0!&UI?]TN IB4?8F^"[$ILVMRX M/ 1O-LMM]X=HI]O3=KK]A=.@@>]"TV6XTN_%]=O;NNQ=/>HV^]YP*9;-Q#]/ MGTX&O#M4R/Z1^$0F5>JCW_ MY_\3+XN$DBSS\QAE158@S.,090FFB!5A&F _$#C(80?T PKS',T[HEY#U9-D MH8?R0[WH'L<^=A]1J#C _>Y#QI.QA4K(5>[ M7O%K_B C:Q6MJ)F.76:^JR!-1!@'?IZBG,>!-+T,(Y+3" 6$BCQ)LRP(?="\ M6QVJCLVQXZ$I/:=[7 #GU&II4&__MZX7F.$.5;+/P/9VS7ZU+DAF6X-?M6C. M.\X5HH:C(:V@A^%W\%_6JU\DG:X6Z*.H654V74?@*9+3*SDV>\D ^N7Z^M;K MZVT'/.C?JVLH9-SB[>L"9NIC:G P$5)?5*/[#L.>,K(?&_% M^HM87S_?-XC'S:B3Y8L*Z %E,Q/+S&"X"@'[B_Q?W]J[WU7,I?L"5,E,Z MTC)G6^J!V[(]S4#M6D=F4Z,>77M.B]81\L"#KK0[B+N!XW&,4S5@':5Q$"*>6M&HH-.'V;&OW+OEH '/#KOM=L(0O_'9T/(I;_ ;8G \/^0T(>Q!YO#6V M#**;PRO]+^O-]Z?\GY+'=J@VW' MQP4^DA/O^TYC0V9,T/2!J@-LH>Y4>/%V5T*^A[;@],WT,;HU 9><;QLQDW7/ MY1LN 4\D-?O$W!Z)5UYAWB 4YQ$A9\C2K",DT+Y!RF"'.6,^2$1B4C\$'*5>Y** MZTJ*MI!K2]005>*T@O1N:B\6&YAJ $L,OH<=EMI&K/>LXZ*>7BO.OYA M&T &M[3Z6C4(R+QI;KH5;3G5PD\8)R2*$2NB'&$_SE"610(1P4B:^ZE@D=9$ M,!A9QX9[!&SP2"OO63%P,=*OIEKUK-N^LF#F?H1S(%F07[(6RIVW78MJ4&); M@>D*\V!*;B?8!V>)OB(&PI0BQK$0)I\V1*TJ5W3%2E4)UF=LFCZ=G- ,%]Q' M!:$IPH7 *$N$FO2>I2G-LX@14#/4&3J./<66JKH[ @O PRS>1 M&X[?-"Z5+?BE,U3F14\:%_4(_&CBXW8:B4YA]V)IFFF("Y01GR.")*&@)->Z4P70=&S"?3>2NBGY1:SO*_KXHV3>=26H-QC;"&R^T%"EGFE; M5A#,S(\[M9SC'0/D==3!]>K(Q@ 53/5UV<,P;O( G)?*%N@2^^'SJ>^T;FIM M:B'7V;4M?4\R\.[Y;X/O-2"Q-JD.C=R:34T TVLC2G"16=.5U"RY-KGZ?/DU M74'W4FS:#QF"#?%_/M4MSOG=>D=,%7K=K#[0QW)#EZ>O9+^I?L2ZW(COHGHN MF3H7E&NN\)'N5\TJ+=9.E)-(I"R4)_^0(AP1BC(6Y2@(.4G2G,6\T+KBG(MA MUU&%.E)U,YW9@#D@RI'KMZ87@[RE=P'T<;K)@,]VK1M(9^ M6-<;;\"B1=REF?1H"[/)-;OSXCW-I/PCK*BYZ)HVL'[_(9;+'C0IRW&:YXPA M&D<$8=4]1Q*"$:>X$$%(?,(#6/?J<'G7%RYM1V=#T11+:D\;X^[QIGA+EN$?UY*=,S4A-B:SDL:LQW2:/^D$U,%0O']9< M+%CF1S1+,D03'",<)RDB48Y1$48DQH%/20:TJU%Z\QC:'@M7;=K?:W;0AA%/ M<0*UOW$UZAJD->486>A%>C$P7"UI+[#D\?5G-FTM88]M7>\Q>$[DKN(RE+Q9 M\;MRL]2:EGK\E&-K;6CHIS4.))K.89@+ [.NNXHV)>L'H3LOGTO^1)?>N)R@ M9,5ID8PR$P=+S9:&."W",.=PYA.&EP?]>.0[-6IA$24)S@L>H]@O8@7J%"*% MY(2XSW/!,>%1#AJ=N+^\\\-[/XS[CX8<\"[O0!6:>7YC 8$I?6W9X*G[DR+8 MRM+O+SYO0OZD8$>Y]].?NG#84]=JK=;]7,D#H5BQEZX$C.8X8G[$$4LRC.2Y MS4=Y$ 8HRZD?\((E$0'9F 9-QX8W(.QM*5\ZC&E$@WJF:5DO,'LU5(GYL*1I M(6W//1JA^#HCC*95<'8:D<:C9@[A]U75)G[^6_ [^O.]6(FBW-0+XHWM&%V?PY)>G9N071 M8;:])[5")'P_)378K"=DLF3*YZC,:KX3HAZ:[-3'SIB+"? MBT+E_0L'S@ZX>;Z\VF*O.G M34OQEE:JZG#GO4B*0WD626BB.IPI0R0@!?*)8'G.N9_[(.\U1="QD_HFF$)G M+XN2M7VXZ\)3+'G(^T#K'UZQ7/_I_1#\'CRW:$J1>J[*IGI@'JG1PI"T\D,M M<2<>1U=26W?>4^3FO;/6%/[HSEGW.?AEUX=R\Z)J8YOKF*Q@0<"C&/&"AP@7 MB4"DR!EB-(A92N,L3;52XH<+.[9N1:HM\(7=4.W)/FZHET@$,TA-84#72J)(&"(=A MCBBF\J >\UB0HB!9IF4U:8$/-S2-)V#VR]K+W\7-EP5A/HU"'\NM"TL[]0E&>1ZD M*,X(ISBC>9(2'3O=+>G8'M65)]4SP(&8XX9FQCS,H&Z^?+RYOMQLCED=V9JZ M#[?6T?UC9QB#I68Q@&/6^R_ZB=^8]FVO'T6U>;F5JM\H$*S_>BH?FP:Q%6_; MQL2OJM3U6WG_8_.U^+UNP5C>BV)=B6O&GAZ>F@DU'Q6V#BM;5*X5'^*S+-(@ M"H(B(6HH;8YP0'Q$P\)':4S""*=Q2/,(UO3MG&?7)1;K#5UZCYT<+>I>+P2T M0=S]^]/;<]_86X'YFI[Y*Z]A_ZIY)5L)FG]U,GB-$%XC!5H72,K1 G-=>7DC MBC>0Q1L*TPX@T,$W,^APGTWWUMKCW7,\;%G[IKN*W MZV7)9$@F^65?UIMKOGY4<(O0;D#M!9W'50T?7E]GUG/3V+EB2? GA9:K\/HZ MUO2KZO2U-NZ=G2D,&,O!=>6@IQ"L"*,*/GTJLQ7W@04?UOW!'S8+11M@5E5> M7XD?0M)\%KN[B\_24Y7WJ_8PQU[DUVA5R]-L M>SO>KSQU [PN5'6(O>C2K7XM!92.F)PUAG2KZ,.PT3&U"PM9;U:/3YOZ5_$L MED$_KX_F- VR'!5Y&",<%AAE),&(^5&A>>9W\#N;N:8AHNQ[U!*77J4,]+_+9^M.11PPK M/QJHYB[IOHA2O\B(7R"F -LPQQA1!?7@JQ0ZB81?)&RQ40%BC#OO!J1T'8?UBE2K].5 M-2+TV1ZML6<,+]Y:8!D5:7\3C_)+\8/60I+9568NBBR-4LY21$A<(!RD A$> M2X,OHK#(92"_YCJ[ZHK.V(KG!309> M?$WK3_/>RHY.S*Z=.MH-D-"^9H:UVA8OBK2%M77/,TUPWFL:;04G@>^K9=+*:!:=1$''',> MA2@3JM E% '*0BKDZ9O0D(=^&@BM0I-:*"4HRRCR1J&;JCO&)5>[3M=BN^"/55-5?U' MD6]^HYON7]>%M.W/DOS=CVK]=/_C3JS^(6A5=Q5DRB?7FT5"LB0OU.RG-(P0 MQB1$-,H92OU$"#_/XBP!C7"QRIUC1_91!EY4\>$I1KR&OHSD&GX\R5#[$Z#G MLOIV-%W;:^D*[!X0&6:8ZL(?6C96L\XS3WU]9Y0)!JSU=](FF187^T&ON8R M]H$YJ):3*V_+2]N!?.5MV;E2F%JY\-2,H*LV):%8LH@X8J@,6S@D M4/+SHI,8*N<(L\1T'3//\XE6*TFF[N=V;_?Q(@M3G@4$!3XK$%801'F4A,C' M$2U2P6+!09/YSA%R[$G41EVV>[=4J5XJZJQ$F0 M,B68);,_2V96\YX2]M",)S]O:*[--37T&[CWD,/O75NKXN2[=E($6]^P_<7G M_5Z=%.SHVW3Z4V;?H6]B0\N5X/U7= _ZH2A9N5DD3(@BYCGR18)E4)D6**,D M0'F:X"B@<<$CT(R(:9(S5A#PEB)L$]!0FIXQVE4%S$![VMYVAWBWCU+3T#_? M\PTV6WUA+9FR!L%9S5M? 8Z' MJ A%AC"+8I2%?HY"DN7"3^,\I:"[(CMLN;Y&8C\$?UHV%?K7#PJ$K?9VC$M3 M4M^$%OI9GLDDQ]ZVA:16SW3A_7H%S!Y;>F>ZGFKN-P'U9H=HVT]-4DXSE=>6 M.GE.$MAV56?--UIA:F;_:5.1QS[6ZNHN+^;;B^M%G 5A$*092H)8!F9)F*!< M)#F*@@(S(H)<4H82 MPM1]/6.(8$P18VGB8\%"GH=@Q*RSY!Q[%T47R><>O =:_4NT,RCJ;3V6 <7I.1%[ZH"YC38D:O2A*'L#T@Z 6/2DM G^=)[8_"!.DX*?!&.:?FKFSM*N M!>;SNBI$N5$(C0I>].=CV1UB;E:M5SIHC?GT4U2LK,5M53*QX#3P$S^.$(VH MFF6?$T33 ",_8WF:Q2G..*C\YU6E<>RM/BBPUF47]?S^_>/N[@(:_+SJ*]>, MIOXJ+Q(8GEW>_+EM[QR(V$)2[X3TY#>D#_*.6C][4;U&UC?0Z&GSE;UV6Z<5 M6?X:39PV7YNUEDVK3)GMJ+^(E5QSJ5"R^4.Y*M7]S*9\EC24(&*1\2@J>$P1 M#4*&,(M3E D1H81F21R1PD\("*%I@I[C7:FCWG@@NDF9NTU% MP.Q]JX-AYT2+8$U_>AUY>R:O*Z@EFY\D-ZO1ZPI_:/7:SUU2NK1K@?S\_*54 MT]3I4G4X_D++E2JL7A B6)IG"M121DLX3#C*PU"@-,2Q# 72",N0";[YZU&? M)P90E#QY$%RM5\A"-E)3L7HNPJ*>+JDA&S9M?_X[^G)SY>VX\!0;72N&[1(S M7R?TT174V!GUHR&TT7"? ML75G&^>C(=QP@(_.Q^'F^.F_-B_7?U:\ON;_["_ -,WPQ*..S:_;79KT43T8 MF**YXYZ3=]KX+A35: \]EM+B_=Z$4$9&=6J]V8QI1)BA$8U]S/ 6?J_5YR!9 MJ?IZE3?\)EWDK9"O>[598);D:4$2%!$_4L79'-$T+U J V3"<9[1 %2<#67 ML8UN+S%H=XG!.Q8\R24P2P;6K5Z0[%)C,%,_Z@8\N@+JV?&^-7A%'4<6+_@- M=6'KRA]*?MXB $/E')4%F*YCPR5MNP\7258D+* ^"L,B09@6ZF)#>O$X#*+" MISD1&:PBZ#0=QP[F5OY.7;(^-SBXZ\);B8VGTIP/3P_>LAGK^]CU65[B;79J M,W$J1LJXT'=L:;KR#D=".7$".RJO:.M'HHZ;]/''S2SWB]BH"16WU?JYY(*_ M?_F]5@F]=ORO)';--N5S$_TO"".1B*@JZF-4#662QBQ"@O(L\H.$A5GJ$\A0 M)GW2(/N&3VQ2+;],34YYJINDNU?T+'ATRP/,L@%JU3-V-\J"V;_24S-AIN=" M5:.\^[U5VM^\+2_>];36P(X!K@!+O@) >%;W 5?(H4+5\ MN1^D$O1S;V<7<+SK2Y)"TE3?Y^_ 1/NXW-.'?RLBPVR[(>F=E-EJ?FU2-*-$ MP/E59TL'3 HV3 I,?QAF:/^U?*D/&P&D6=]7].&:\U)5-]'E]=/FQ_]?WK?U M5HXC:;[/KQ"PB]TLP&SH0MUF@ %<:6=W IEI;Z:K&KWU<,"KK>ICR2W)KLSY M]4OJD*-DU^]"=+EMB7*@(!LF(+XI2'JJW$^JM4$3B%(81("3$ $8N M 2A!%) ((X(Y@ZZGU*G%C/S<)^<;R@[:D';0^+=L0ZOC]CV_KC0-?ZNF+57G MJEBO47D&K=.&LFA!FO8)30;>*RIMAP]UY36$Y)80;=78-"4;E*4Y3^*=X3?H M_66Z+YVFD=;)RC$:/^J*"+[QI8:C+N)DITG<>]^)H^BY9*>-9L0/VVCF<*1%C.ND +W=G'Y WR2N\SJK M?WQE]TV>8%Y_08]LA7S, ^Q&@$%* >0P -@C 4AC\,H=E4MXQB!N2\* M&Y+.EJ8CB:H;RE&=G+>7J9+JF8VFD%KF,R:)D14='7 Q8QH39VA3H\\9[+;I M[W?%ER*_9<475LCZB _Y%L9#=<<]-LCL47M_^2R!4 03X/;ZQODB_K=3$O6A M*.J\4+W=.Z\9A3VY+:7HAN=:^K",KZTLN-FN?73DY7;N*@+N[-Z57I@ [G'Y M]%0RDC53^U5>W57?+K]^4\^541YL9F-N 2>&##@M!\X[P8,1+L>H:M2.TJUJ M1<^:SREDAGIZ96EM@FV,TEL>84-%_*.P&DHOFA:U;(<6/Z]94\28TZZ%3WL> M0GCH<1'X A*D", D< %V@PAPCQ+/)3!)H!96F@K1F7W"D(6VJ&U VV%G:KG, M5:GF&VPK2,\]#*E?.!OZ;=';@ .;=2_J\EJK?5$@N7#]B[H2#FM@--XUQ5U\ M8?DS^\H>49:W@#Z\*!\EXL,-7F?W#0U9:4=D=4GV*!ZYX=_$;RLNKZ^+O.U! MZL4N32.( 8LEG$8".4ADI3'Q?$9YZ"?49WJXBS;8FMG;=$Q>.!LVG0&?SI;1 M"Z=GU6EYE8>Z0V[-NL1:FCLUY[7\C.BYMP4GPP" T:;NK $P6F%J80!&FXH\ M!&"T.KHAB$-95-5M6?"L7B4T(B'Q(T#<, *0QQA@#T$1H>$$19A&F&"=I*C! MV#-G/364G*>&E":4P$!^-<]D*)6>>VD%NAT72!\,X)!U6X7_@Y&7+?(_%.F@ MH/_((\8=_LJFC NMWQ>/CT7>(A%>UG69X>>FD/6N>(_6ZPZ=1<1.?T>R^*NN M5D%",.3( RYG8ON3NIZ\$Z @="EW"<>>GVK5]4_@9?8XI07A;.^.G_-,'@F8 M IA.4;F:/2^D2#W['S#EM%QU(*;.D"]YC'J5K9];Z!#.Q4HAHPO); ^?U>RW M>GZM-BF%4E1WI@#AYR&7Q\R^_9]7*37R2* M)?I'*\MK+00[3W'A4$M9!8OSVS. MDDZ;/>V@IH%/PX%SI5R0/B;YN U;$EK/9MORD:V0SE8!%NM&3DMD7C5R9,QE M:T9."W50,3+RZ.L O/_*JKKI.+$Y8Q\!OH-@(YP#'% )/03UT_%CL+MO0[M,9,EM'-^OQQ_Q)T/K$7MC: M[[LBN5PN:$@V0H^ W)N")*(,N#B!+J.^BY$6!LH(K9G7HH:4X^LM+V.J45L M+ FLYZ*W\>N%T]*]<#KY9TC25!#1DF<;H[2H[U$0>=\[J+PRT7X_,R3WK0V6 MS^:7?\M8*89\^'%5R+2#54@"W_-C##R:^ F6%BTE\J> S0DR/-<'"J5*AE1 M7V[CNB'A1/MU7(F. M6DXZ%ZU!]-Q-5=:K;^Q>#OU7)FN.GQXR@M;=E^_Y$%(_3 %#, :010Q@UXL! M(MA'*1=Q E6":1RE,K/[&!+4=!?CRAEW"]9$UC-_/6F5S5U)FC&S%@,,3%K\ MU]:Q&R5Q.O-4^UA [24ZV^WM^W5?Q>,NBP@ :<$R+MT$:>[$4AYP $5 M43I'& -&-EDP/>,:R'0^XE803@-I9(J09D B M7V490=5 +F=YD]':G ?)K6K9X*$WVFBSP6RAAYR2OC!0OK/QQPZ_+YJY[>Z_U*/WX&XD=KG(PR!AK@Q,8Q3%(>*>1[5J#U6HSKQ. M?B,/C#ZO&Q#?CGYSSH[68I%Y_X#RG*TU:P^5=*FVJ;6N(3U7L4M^J**VVL:9 M)?5"2VA;)8A*-)>M0=11PT$1HM;+IO7*N!Y %?;-5SX4I;2>Z^]D_=REA,EG4>JZ(H06?@0R\7]I %+F4Q#&/L)NX'DNTSH$G\3- MW$[FH1 [+O'BHV.A6=F0!%L[C;TVG $1(@/)FZP4[+AS.O:< MGK\+I^/09KFT!459JZ.>PLO"!=86U'98>6UC4%/TLDM*Q7#5;5'5:/U_LZ?W M!64K2&(W(@P"2ID(E")$ $Y@#(A/6>JE./"@,KK?:3)SGR6T(%\=Y0NGI>T( MXHZDK@MI=E11XV[)GOB:)PZ&DAO@G(T)-@'M[.BP"V.>C8EVB'PV^K1A4EL7 MY(L=U./3NOC!V#=6OF2$G<@N6#<3U@5.I+C/)?!GVPG^O6"KVH;Q<0)3XH<4 ML""0$ JN+/8-/1#'/D$\=CEQM;JSS\;I@MNH!B?G6"Y3U_M9]E/X5J.ZO5"1 M;W2-+(I<,Q*:;U[5HJ0W,5MZ'NUH MFPLV(W26W^V'OTE-5MV\V+#O1]UJW? M[ JUE0TV&Y_+9GO-K>Z#;*[9"9H3!-8]J!Z3U5JEX1FY# ^>#\=;\)SYI#"[Q\JG M']/? W7[KA^>C^^R>LU6 0M@1+T$I&E* &30!2GV/4!0&D4X82CV ]6=S_[@ M,QM90T/&)9[_#O_4GS><;FEV7AGG=S=31-0S*UWIM/8RI\0PVL$<#+;8ON64 M&,/=RLEGS/8H'?2 C)W;6@C(4Q)RQD!(F L@1 E(O(0!&B7,=?TP84&HL[78 M)S"S$75X&PU\R;\[_]/]B^MZSA,JVYZ)_^%X%Z[KRO]U=]B#=A@73A!=1-!M M0E#Q8^JF_4-953UWL6FQ3>'>KWOY7__#B]S_Z(M?FJ>O&!G^R6O^%%PX8E"9 M%YZ]L+6B@9^<,+4]PY1IT#/T'O%$DKK89"XW"K07L9\2QU*@?3#\HO'Q*>'V MP]J3SQED(:G 1VZ.,O?J;'?@3KW%^295MP!22EV'G.5F:9;;6.9J19([9<)IMM_>QDP%D?W##"1=6# MH"K_N?[7SZ0V5W82;VUS&E'/LN M2B(M6"LEJG/'PK)%KC3!IJS[!^F#/L@BFQLNRW1I?B_H_9*_ M5#6]_E?]X_*/DE9_+?.:?LQOR_(?9:7>!F42@9F=Q#\8*H%,] 3RIR;W\+ZY M*QN4E,F47:'TNLO6K5I\E;9%^6V9%:4CWZV39.X\J2T#;QN) M1V'.U:+(/\5,ZBT BR'Q#(3\,R/QJ,_5VT;B49#COP,2C_IT+83$H\&0(9)' MEFYZ+7<82 E)?ME6+?!\@F%! <>)Y*4XB'",M \% MHC.O1BT+H.'!.41052KG,U>HVOIA6TUZKMZ&AO01.S1$M@74H4)R67P.#24< MP'+HO+MPJ-UN"S_F55TV)_I5@XHM]H%YYP0_%"5G6?TLOLJ_,]D^4GA$L=E$ M]^P(JFL<^Q&,>0R"U.4 8L9 BA(,?$93%^(@2K'64>C;$&MNM]>R(BQ:=DOY MY=N5\R3"[R9]0+>[[)M0U]R1^*O-[>)A>7=F,Q"U:V10"V&W0?M W@NGE]CI M1)X+T/AM3N-K1^QVA?ISA.^S3*2U6'X>[@P#^Z(4%/*V?H_\D#<2'];%'W]C M5!!#6?ZIJ*J[XF>V[5S!Z-6SV%C[$OHG<8.P IW2@XU;1WJ 8_*SO67O&1ME8>S%FQI M;@?L3(/BAF$YK9IM*5K^G)[!]GY3LN@T/#J22>>=9/,G>12$F3-DU6EY=22S MCN<[+;L6-Q]6U6=K>V*'J64W,%85>;#%L3NZF7O]PFI)^+8L7C+*Z,\_?JGD MCDMLOU!.FC+J.GMI*ZVQ6 X0J5?838B?T8>WGBV+9R_F.K'DZ@P86-2MF2MHWX5-&$D_9^0?Y75.NQO9 M_1O8]R\E_4>Y?T^KES)B.OX2&2,LIZJY">]E7H/XL]>QIG\<]RE*"G:=I[3&6IF7EZ" M=929S)HZ7G]Q_+?=-BL(.*%A3$!"* >0N01@S@EP4PK3Q*51$FLA"4QA9HD# MNF-U18:=BB;I70L($$ZT2A'%RG"/HM9NQ"ZNG(:#(BP%,D O2(,7 3SS? MC4GJI:%6SY>S%&>VUIZ:6'D;EY?:A9K50MZUMN3=M[UQ'^2UU0;O=R> MT8NV+2O+:LFNS]-;U,:5Q=^W=_4736^0"L(8K3X(EN6A/Q+BW/ !E-D*$8_[ M,9.MGG@((,<12)'X/Q8RRN+ %Y&WIW>?=(;B[+=++?TV>2?K.)!W0F0 5NC4 M#V7Q?/_@L ZBN/OUDQCU01K.DQA4]TKHG*I5+X@L*E#WNFBHNX\#W0UA!FU> M&RF*:NT2Z1R]A:^4%,4_O&!2?=',:W10_?G])^F3NN//:@4)C6.6"@=!VU(E M")"/&(@)\AG&2.S3H]4+*W&AZBR.$]+YP(?D],Z]GCIJ8F&4J%AM(D?]P)S' M;2=H^>FOFX5TG2&PH>+V6=U$LFRKJ/.B5@SHQ]0P;G^6-*!G?*K".[]9;@YS.R>AF<&=''4YDSLGV([1G7UX0K(4/G^WCP_J'K\_ M96V+JK;[S(KCD+M^S(&(;CT 21R E(C_1 BZE+HD]43 JYL?98.SF7W EIP\ MZA;T#!*BK$R 6I3\*FK5,6#L1S[EG37NT5]E] M+F$!+BM9/MP O/?@#=VGR"&E"881<*$? D@Y!6GH!L ONOW6S^M0+1JQK!D]ZSZG%(LV;2"OM1;HYRDNW.A<606' M[,69?37%LKEE M^DL']]3QI &!KJBJ\VOZ#%K27[[SN]?+KAB[W950US7F7.=,,A7 ]4?N%L^ 2\*('D M].+D#%P,9W'.AN@SJ-):I&6/LX4C,NLJ/8S<[),P<^V?MKD)+9I4O4H\W_=" MAH#K,>&A*?- $B4>\#EW/;';@SYEJ[JHT5K-0Q^2T'*T&T+*EGLG7W%(2\L\ M^^*(:M3O>J[5U.2V+)21PAL*BMGQ9PWV1'GM3?6_U: MU?G]57T4%>0R%U'<%AQ$[V14>^"98QX)X"]/$?;P<$\#XL@ J.N*L8>-H[X= MT]?N^8W9K(K5,WF+.K5\3&NL)*-]G#ZUQ79TQHH8[NW,!S$+!?;@>+\\RS%O M>',;-"Q:W^ ,IB&-"4LPB))$HCFF8A?G^C'@D) X#CR?4JVMG"X#,_NN#;0W MZJ"]._"@YQ:64.:$/STWEIBS6F:"%H]L6]ZE"?.HK7RU4&1.E>IYK0.@]):7 M!G"IU>N G0OG*EL_-W!G,Z \FBK%4LRC37[1B,A4.?OQDO$X9LZK[>^Q2GT4 M()SZ@%%9EA+Z(4C"% )"TP@%#-$DY#I[EW;81?8K36]MS2U*)[6:+]"71<_" M+\<%T#;377XM&5\WZ*(FM2O(OJ'L_=5Z#ZO=)M[R<)])$.B[/]CZA778ZG'" M8$0#V4X[$EM^C\D;WC0$$4HQ"8@/"=>ZX9W&SLSKNO@F0FL-K52TJV:>R^E, MSZQ'FV!=;/L6#IF\:'<7-[G%,E$[^IF_8Y8*,V^EEY:&XC2Z;.F,^M;Z;S5[ MYNICGT0JX@77=\,0L"056QR*4Y 2AD$*?>+&R(M"HN48EV)\9A?:GRQ(4(MV M5_1F6F?M3:":[WV+TZ+GI9=K?]5*U+0RGR.5>,%9>&T$15VV_QR8BH:3L5P' MJA/T#5>B[E+_AE\20;AD=&1A_/G'9_1[4;Z7/5FV=^:>QU 04P\D?AQ(5&XJ M4]!K57-UF3XIBNO&HJK67!$& M6NZY<\YTM!4+1,.CTS Y:^*"/=79RX6E&G^K0DNBR MV>A-_E7F3,@V5A+;:F"M&!&6PB &,1*.$WIN K!/,$APXKIA$"8HT *PU65@ M08>Y>^'7M]$KR MK]U^HGJ^[+9#R6I:K3QU;#1NB_4\:&)GJ2M6S2595I89FE8/,%07??#F]&Q< M. TC%XW2KL\J31]92UM^6Q!;ZH27Q=K25L@!Z);^"(;H6W*O.UC_OP@)N]Q% M#WEQ[(8$^!1Q %/D@33V8D "%'#/]UB40)T8Z32IF:.A]E JWY";@*]U6EMJ MKL*.#O1<0RO^3M[GEJQ%K*VSHMG"VSI-:%G,K;,"'^!NG7]#/S7T@^"_R&7G M7IFG]^/JF=T5OV;%NCG^NN%_*Q[9>PGR6?[XA/ZX?*Q5,T-UQYW9B#MVG)X? MAXH-C5CL-BS)\$ RY71<.8*M"WG)^*P:(!AI<]SNYU:DYHYE%AUJ97R:*L,H MX5.;V&+YGJ9J&*9[&H]AVC#HA>7/@ISLU2(V.[>LY$7YV,"!XG5VO[F]E9?[ M+;K5#?\F?EMQVVQ-K,3ZQB]<#:L.@->G2VS@S2)#BA,ICT..'9^DSP[#=/:'8BL3:1: MT/,ZTZ/G&I>>&8.61K:5:*W!D37&%FYW9%NAA\V/K%,P;X64M: [LME2D.0C+Z <4#^) 834 \@/(*"$AT&*:8R9EB\>H36SLW79(9V2SV OI%*7%&R&=$?E8%Z1S MK^AO^^Y*>EF6=ZP4;J-Q)+*Z2W5O=_3EFD9W M5Z*F.^PP@4I9:*U-U*A@1CNEXR,NMAT:%6BXYQE_4,^*_K7^4:WN'IA0A'?= M=>9H&AKT-P[RK+6K]XQPF&">AB#T0[%*1CP!. D0X(C'GL>2((2QBO%IT)S; M'!^8;$7O.3T;;;\-IV>DN3-0LU$=18Y;[4SJT;1C%1Q]T>QTQ/ M:LYCHO1Z#D)%\!G09$=DM&3YQR@L:MTC(NY;\-BC>E9*6;:ZSFMA^)>4BFFO MWHL?;\J[XH]\E2:ASU 4 R]F'H >;3J\Q2!P$^(':10A5^D88X3&S%;:4G4Z MLA>.)"S4XDC2:M8YII]QZ[0DM9YU&@FL;(P*(HT<:8BW6SL4/VS-;VS,1_%0>-82XV(,)W ((2CC!SZCNX02YL(*;G-VU;4H_9"_-*EUM$EY7R(_" M(!)1.B4T!I!2"E :^R (21@Q$?U$"3AUFVW=M% M-X$]OH!S-YA B]@CMM5L"[[$&E_+(J#85N]!*/LXQ8S%'$"&70 CDH!4['R*$W,RD%-69K9*P^KF]H# MQ98;I^?&M/C3> K47/&RBM7SP4?+_+<761>=BB\V.EZHUG.JIJS7>AHS]$JU MGE,5>+K6<_+($_,027&?-T#7FA"'IP>8/;W,&1"=!:GPO&RVL[X.";U.%M=) M@4]F99U^PW"[U<>BQPVC S:2QY0DB D%;L*0[&+EE*I?FM980J:7CO).4?G(NZ[K,\'/;GJDNA$NS6X1Y5#!;=UD[8R][ MBW5,K(/[JZ,/F636-GF<8I6Y_)Y5ZBFUP[?F3MX[3#55A(\_(N"XR4R33<]> MCF70_B9)6FHW<5P.PX39G:$6S)0])L)NBNS1)V;"3:U.H>H=Q<[;PWB__LY* MDE7LMLP(6T4!]2%'"?"#Q!-A/60@]3@!;N!'- UVWV*#<7>9TD\3[I:A[S+O+>O/"IPT80(1<'A,<@@3&(8")%\ND?@ATU5X$M33PM!OK37)AZ+D+*LE!'/7W((A ME$0><@$+8P8@3UV &0U!2E*?)A CRE(]H- %N5?R'U.01C<4WV*;DL/)M+3# M7GB"WGBSDNTW\*?J5W)R+MY\RY)#SM_6!MO^E"S7N.0T"_H;[$T[X4OZ>W7] MG:SOQ2KX]:F4/86_/3\^EC\D]U6=W^&U7@MR_9%G#NMWFV(+KIZK%KY%9AN0 M]3/=MA[YRIZ*^"8-/?Q!MH]O]&?5[%Z'MQ0ITVWEP.]6NY";JXGH[,% M W*+'3Z8JV)X.C%A%'W'=/5":753"M]77I?Y?75+;_(- U]J^?L_JJ]\323U MNWHM20O'..R#KNJI+)":V75=92\99;DPL:+LXIMK5$KPN:JIK9>-*79-,1?[ MX>;!/^2-PE?&URVXH3"^MLWPCOEQV>I'PHV*)V0=A+J'LS%-YUW>PC.DYP.7 MGAS+;M*B;HW\I@WZBSE2B\H:>E:;PYK6='_(UEUW]E7BN31P70*\)/0DCDL, M< @1\& 8!@F*0I\HM5$Z-OC<05Y;U"SI.2U!W=KM@1[&'=-4Z30C+77!#&JT M#R684)P]&&SAJNQ#,0[+L8\\8PB_BJH'B?PH_I'N_06M&RQ(F7OEQYQ'OL>$ MV21$&) ;@R0*,? 8]_R4>"[F6L4 ITG-;$Z28@LU*G\8T#Z7P*6K,;53+SMZ MT#,\8Q7HXZZ>E)92KK!OZ>U8_O!?[ MV>*1E=N+>)<0-W:]6$+;B[4Q)3[ 2,0T8>I"2OV$)XE6BT%5PC,;>E_))B?) MZ1FIG#\$*T[/BR8D@K)*U6Q_#D7I>8*C.MI5D?/;+(6SNK+;K08\3_8U:@.5 ME7&B4E#]??V(^JJ#V_R0502MY:;M@_A-M0J8B*PABH$;>1A -PP!0H%P(PCA M-*4^9ZY27#!"8^Z3B(ZJTY)M-Z0-8?4X^Y1VSH?;%F36W-OKBZL5?9\1R"@( M/S7F8K'X&:&&(?FY1\T6\[9>Y%N-ZN:B95-(SD,&8X8]D!+7!9 3 I(D2(&/ MPX P1"*?:4$)GJ SLPEVI4<;LBH5YUIJ4EN/+0BO9XLFDLK2PGJ*R MZ#IZ1M3]9?/MT/CJ0M$:L,,05W]*1Z0#51>J.3*GW!S;$%CPDV'5UP9]37 MP1<\)MA)A,&C#QOVCR79SXP7I<336*.JRGA&FMN(JOWU'?H^K'F]*]J*UY7+ M8Y9Z/ :4N;+8*W;%"LLC$",2>C&A%'&DU5S6C(^Y3\4>9 Z'O*YYSDN&UME_ M,>K.'@AK9S MP-/F+X*MB]EKK2?JQE8W7$,NEFV5.TU5!WUT)PYGK4;BABLF"S=I*RN:,DZ# MR ,^(3& 80@06D*: 3]@'$84J*$?6R-HYG=W]&\?(G:=R0S?S0QOV%V>FV$ MYG2INY3IS(TLX/MF''66XJ-51=-K&C+WB'5-':6/LVRHKPCQUYVQM5/@=WK M!/\QIU_0HW(ST.-OS^RY) GUY-$3 H[[%CNR:49<+3VG)WCA")(R[?,9K9U1 MF;52,0$ M=:L%%,LH4<\YZ+;!V[ GMVR#>^6%V^*-:FG)#GG'&7E[S?)&%6;4-V]\1,.3 M^QV2>[ \7WLC;_XH^RU[JT1">C W%3LJ*OP<3&. 8XH 3+$7X"#$?J2UM])E M8&;OMH'90AW,UM;1K9L-@!CST7GW0W;_T/1VVJI6/)R?48&:I_+['NT LVS# M3OM$TQC=XE&\H29LG<'KDE_V\-U0.0>G[J;CF*?%M57+USF5G9Q6<9)X48(( MB& , 0R$*TI\\9-/8QRD'">!?E+<#H6E4N):HHZ@VK2HTD^(V]7+^'=X_WG_"E[GU>TI!_6 MZ%[UW.#XVW.?>$JBSEWV*)>2SU]N/\K\ZBJCLNA1_3SAA.#GSQ.FRZQG26/B M.K])VI:*.\<%,SI1.#'D8B<*XR(-3Q3./#EO]TV94EX\UVWOPKYUH33L;:=' M'#"7401!S# 1D7<<@S2%">#0IT%*94JJ%K*>/=;FMG9Y]23+9OXI/O=JP^4\ M'3<5)D(M+G\=]6HNT2H]-[=]-O]H63W187-[5;Q\0TUU)2[<45.!L3?94E-= MH:8]-34HS'B8>R7LV<>1YT

^ 0F!.ETC%$EK.4V M]9O)M-@0(F;('I\?N].+IX[Z#.>T5\J><0[]S'D&N_!)ZY5U9Z5,]NV=HEZ= M=C3:[[\U9,XO1?["JIK1#C\BC$(>D B#Q,<40$P]@$D4@"@(XX CS*,(KMKL MX&\U*FLU;[08_SKFNB^%LN7^S.ZSO#E!Q&C=0(F_093._8F- I?XJ8N!YW,, M8!B[8FUA ?"BE.+8]4/,>#>Q8CO_IY_67@;E214O_,EF5&VA>Y-SI+=2+H>Y MNA'IPAI@S:O-PYO'6]WG^[\)VNJ)Z5@.:_44 Q-K#7[^T9R!O)=E#@W^C8N( MGT0X +%'B+P$H2!AT)4]+ZD/D<<#;%9#L$]IB:,=IZ%F!!%T6D-J'MJ*W)J' MN>HBFV?4GQ+'=J;\ 9W7R8 _)>[)S/:3+^A?GWQL3^*W#?<^*3;5&']YO@^P MH^DY^H2:BT;W"R+"+W2V<%VUXOZ#PM/[7=_-<5S5JXN?+^_OZNBSE MDG;Y6*O>WYT<8&;//Z#K",)ETZK!$>2+G!7/U5ZP^5@\CQ1M:FCEO$E:48B> M1=K4A99MGI75R#1/C[J899X5;&B8YQ\V1'P\ AL_55(;-E5B@. M$^XG!*"8-A 63/R$7$!2-T4AIY@'6A!Q:F1G-N_C>&<73L.(TW'B_-;RHHL+ MJ:97M0C0OK;T;-^2HO31([7DMH4DJ49T651)+44<($SJO3WO39;,![Z3Z?@K MF+@II)Z\P_*@\"EBIXC"$ ,_1"0E'DE#,;SM:H0A!S.[%_%EQ?/<86UU:/>=UH![3RZ_#@0RZZK+BDM3/:+W^ M(3\( O\))2X?@0B '%, 4X3"1D6)FE :>!1 MK^]6>3>G.G:;2MZ]KE94-S>&XL MCCUD[R1B$RUT)&0E]7TNL>E6E 0P99X'$A2[ (9I K#K8>!Z'DQ"Y,&4!U-/ M)$Z3G]DW[<"RDYW=-]GLOCL3%?_V7$T_HAA1N/E1A1TUVCFR&&PS>B5_/:\_ M*R<7Y]4PXPG&"/%7/\DXKQB5$PV%40SJCNCO=T43.E3@#R?PM3U M/>3&.FNS LVY]^HM!PYK61ABE_7 9:AA1V\)5E&FVKIK646:._I..QWU ;Q8 MR\"%T[%@;X'5D-?2JJI"<=&E5$,%^^NGSJN&:6%%R;+[_/H[:8"E^P6[:X\: M)A0BY#/@L9 !F/H2DLB#( YBX@>$12[2^::.DF24VJC U M)V!-#7KF?U(#%MNZ:HEH*X-LE-:R660J8A]DDBF]9-I#WR>HCCU$DI=K9VZ.NF9+7]+2.S!>YX<(KC1 M[2JGK$LU/S"/AO2P1S M*)V[$N55)K=Y7]E34=:KP M]Q*$+2.)&(EK@,4BC *:1$F"DR 5^PU=-)U] M(C.[B@W.S):NTQ+6A]0YT,^X4[ EM9[Y&PAL!*US2J))Z#H'@RX.L'-*K&,8 M.R>?-3?!__.,2O&5KW_T%H@BZ"6$@81&P@)1A &*D-C0ASAT4<@2K+:$C]!8 MR@ W9(WM;U\YZN8W061#ZU.6ULCX3L@SR?;VQUS<]$X(=E*0T=)62Z6PP,[,IM[1E9::\W5FO'5G-YCP+^D[= M,M!4YSYMV%6LT+4R#^/.8&GMZGD-&]PMJ&K:66'SVIM1^0Y7&KNE)_'7IKII M^]W*=(7J_,?.B[)]##02.F0@XE^F.WR;"FQ7!CEBX_S=-'";!< *C456"IO: MZ)<4JV/."P%WR87#OLG9W4-9/-\_?,A>FNS-ZO)1K'_RKE5FA*S<$+NN1ST0 M!+(GN(C>8 MS.4QY+34O3",G!IO;Q))3DNMIF!R>D0,_3@1T7$M*]B"6$T&M M;7?]J:BJ+ZR^X7?H^RJ)(DX@"@$-/ X@3"!(J=CG4QKP!#&74%Z/G:I5P M%G(9%7(O<0$D7@B2"/H@#)GK!U$:XD2I&=$Y0C/[F)9TG^#B;(@[+77UX\51 M99T_8[2E CV'82J]UG&CBFA&9XZC R]V\*@BWO#T4>EYTUO]&F4YH]>HE/B% M59=]@A@+/.1S$/$8R<-%!E*?8.#1%*(TY5@S7> M5WU&F&IEZY%W9S:T6QE)R$+.3?IV);;HY4M&6+,!URAI/2;XN+W9D%G/TLZ) M:]'PS@EG5M!Z;,#EREE'Q-DI9AU[SFRQV^L+U:(A]L>L [R=GU&5D57*2.HA M#$&((P)@! .0< Y!$ :,)P'DC&KME+6HSVRQ#0US2%L]1<8N#+ ?BN@!>;(Y M'V< ^U!L S"'G**(A0RMQ$BX>'55#KG05.8?^SWZNHNVSNSCZS^J&@=^Q[_;,0[)^J$9/*6'-G.-2"AG-;RA"B*)V[;U^= M+2M.RXMZ%*6DG/-1E6V]Z/D(%94XOTE&G(832]&6CM!&T9<2@<6B,1UQA]&9 MUGMFT9J\2]G>K.S?N2^J?L102I3?GKG11AE49Q %/.0>K);C@)0@"3F 6 M<1J1"+IBA=#9[4]C9^YPLV-N (]4M= S/8,; )6V\%WR"!HFNP)O$7E)/C4Q M$]IBW5*T)+.M"]*=R(WVZR&\+..T&Z^FF66T,%,:U7Y!ZC]4I% MN"-BGZZ['7O)S, _YJ24B+Q7K/WW8][0>"C68HRJ[2+UM5BO13@GVTJM(N+% MKA_X@&$D3=Z'PN0C!J+8Y3[$/O4C5\?D->G/[ 1Z;IQW/3\_.5GN#%GZWWV7 MN-\D6T['EV;,HZMU-=UB&S>BWWA?5'^T,'A._KRW.F /4VG)ZJ!PW==?X_I*=M*0'5S[ M,]/]NQ"?08#\$*/%"#G$2R5SZ!:^OSO#[_\/UU;DI6^+Z MRL8TO/+UE12A;<*]N?%L34W!)I26A0_714C@E%3[OC+5SK=%28PQ*GXX^97F=T30%DJ\,L MO[]EI5B)'I'@^ :OL_L61";$- D3)()93F5+PDB8&>(N"'SNI2'$OAMI%CHI M4)W]>J,C+I%E>NI.L2&O>]&AHD?5"P_+VM&]^&C(RT8@O88&'#A;%BZL]20S MDMS:78@*S87O1#34<'@WHO.R\1U)\OZ3G%@Q:M>\E\0!3%*QUW)1 M2@&4'0YPB",0TCCA/D2QRY#FC-#3EM4'Z\8]V.]VK"2NO5N*$5I+WTF<%_O(#83"2V9&/P:*('&/ M/ZR+/_[&Z#W[JZ E?]D NWQE9(VJ*N-9R\IE3N_0]UO4-D0)(?,]SD H? 4 M44) $OL18)PPE_J0,U>K?;I]%N<^RF6UTS4'R'+G>;O=OQ<,5LZ[=7,^\Y,C M_(W$3W>X$,!YD!*([7[>PHS4(S C2TVDFN-ZW>G1\W8*,"\-;+ODV6F8OG D MVYN_MOA8^\PW*6N"_0NG%<">FYQ/N99\ZPP,+NJ0YU/POA>?D9+^9=G[XAM; M,YEK\YDA>>FB[-4A.>A+N\\FF)JJ1P,>VKJ:)H- 9WESEM%$ M4B6[1Z6LDG;8R.?5H0K8 GS64LDHK+/:2,N!-VM)M@/1K/?F*:\YG*!/XJ?_ M_+?^-^+_) #T?_[;_P-02P,$% @ J(AE6>T1Z022C 6,L& !4 !Q M;'ES+3(P,C0P.3,P7W!R92YX;6SLO5MW6TER+OCN7U'3\SKAROO%R_99+$E5 MUCI5)8VDML^9%ZR\1$IP@X : %62?_U$ KP3)'')#:3*IU>U1('DWG'Y,C(B M,C+BG__'U_/)#U]POAC/IO_R%_Z/["\_X#3-\GCZ\5_^\M0(A@A#)*8\!5P^=C*=_^Z?Z1PP+ M_('8FRY6__R7OWQ:+C__TX\__O'''__X-_8GZ+[CZ,:@? 1<@^3]^7>2__.L__/##6ASSV03?8?FA M_OW7=Z_OO/+O%V'R;?&/:7;^8_WVCR]F! ? MYEC^Y2]_IU^"JE'F):NO^[_7O_CCS5L_SW%!4%EQ^2M]_&,50OUB)8V5)!Z\;BV5 M_>B^6G$?Z&='')4O4B(XC *4=@P\UQY"\,X:5W*V_""R;[_M+M6WM7DV3S_, MYAGG9#*N7A?FZ8%F[X+U\B=^_!SF]"!(G\:3?/7;93X[;Z&KY:R!Y-9J(7+_ M\@-Q77 ^Q_SK6BN/,K?B;$F&%%<_V4+C_^]%F-,3)]_>X>?9G.003&+>MB@P3XP:; .+.:[>"@^P?#OO+LA,P?)B'Z6)3S!WR_.(\Y'UA15&.? N&!$>S 0,15() ;I7%%/%VJ2OVG:!B3X'VA(G5UOAF M_G8^^S*>)G*H KG4B 6,4D@[8Q+@2\Q@!5?:8HX^N'; N/?V[=#1<6:SF6A[ M@LC;V6(9)O_?^//*=2K18\I&2)'8D7J(J6,9 U+.X#<>?=V\.@X MX=E(K"<&1[5Z9W,,:T_:U',_CR EF3R%7("C6!R\)4_:.6DP'GA><^MMVP&@ MXQ3GWJ([LCD[:?9]"H#XXIBBDM+M!/9RF1"JBADVKB+P22%I>2#U'[_ MC=NION-4YD$B/+'ZWV.ZF!-TN8@?QLL)CDSR13E'L5#(U5H9LE9&2"@V>4.L M*,L.<@]Q=D M%SAX?QXFDY\N%N,I+A8C[6QPPBBPFM<3?53@M$0P9.2$P6!C;I&/OO/2[7#0 M?;9Q?T%V@8-7YSC_2%O>+_/9'\M/+V;GG\/TVZA(4YA"N+EV^&B^S3CX8+M A_O/^%D M1#1L>9R\.%>>KS MJG6H]/-XD<+D?V.87Y66A\A"4"R2D^P(T5QXXH%B)^>\RLIDK\1AAN.Q-V^' MB8Z3FDU$VDFU_@T3/],GBY$+OG!#P;0K3H,J3-,V2<;.)L.+M)SX.$D.D4H!(:(QD)/3&F.6*1V6MKKS MNNT0T'$&UGG]KD$O=NM!]XP_MB 1]#^#Q:%<-5"+PI/X^G]+(QF8+9^D[7 M-;YR]B@*!:+,UKBTY 0A"07.:"UD6SA9+JX^N5ED MN]"UK]VX>L?98D%BO>82C;/**D?XIUU0%45.M&(((@85N,28FG-YEX+3W!\? M# E7EJ:!N$^XR=RE_M+!OF8BD7%T/@A(WIEZS./(FZ+H2Q=6;+ ).7^JS&Y_ MS-PCY+30.42S&T%RB)@[P,J+L/AT-LWUKU=_OQA_"1-B9G&V?!'F\V_CZ<=_ M#Y.+5:61<9@-:!\4[;?%@!QK@X^Q+&]$,3_'DV?T]+XM77-+FH">6SE.87F%=U#<3V M%;.^8+;11@@NUC2256344P87)0IO;)1/AE;[0.L@@D_3=6,X"!Y/>QU E;BH MMX(7[S A&6SB\W>\YD664(02#@+R#"KS&J"T!5FGZ0TR'*I::Z(#<-TEWG-:#4I$*-)(4,$'B()Y,$)K M&Y2+)CYU\^;@2/ T;40&-$-[2W=_:,R687($5^OLO%83_U=-]2V6C^W<9X7^ M/IM,9G_4#"#]Y@MB8[S\=;98_#Z;IBM[C$Z%DFBA)%HH2GD+@44+AN2K2W$^ M\Z-M[9>UXZR&&:)+2Z!(,'=C/M_/99YPOO[V=!+(9TUR#\\\U 4G^QDAH M(:)&#HGH)H%K>NM"RWZ[\.#T]1!--P-A,Z!T Z UQ$NJU MC%\Q+/!=[9G\IOR5O(LJKI'21B9- I)"R-J@,$.H)YFI!.-8Y@;QJ7J!?1#T M)$$]Q E-(-1.[!U@Z.7E:VM?JG/\$+ZN!557@[16LD3NJ$>?R.=0!CP94O": MZTBN: BY-8 >IZ:'>*#1;MA$X!U AS;G,/TXIJW\FH7K_?N7V2S_,9Y,1JB+ MJN$+<,[#99%-] @&I8TJ!FW=4_4I^X!H&[IZB!::P*FY$CH UC7=/&!6R1>( MY-8G1#L!I'G1VP V4N8'8#@[I'#P_.K6WX_9NF9 ME0%XJ.4_Y*;5R^L2M/(L>!Z8;IYZV)ZZT_0B' !( RFD ZC=2L7=CB:C-C;J M!)&D0[)R$CS3&K(P*;C,K&"^M?^\B9#3]"L6WS=/V@@;]X)'1*PG&P=.Y#!&UL'E=B8N:3 LGFH_C@UIZV?&D;[ MCT/L$%5T *JKT^ZWX5M-RE^=-R5DV4OFB783:?T5#4&Z!-*7C+KV TK-ZSHW M4M(-F [2\R,E!@<(O0_HU#.:AS(:>:L(R65;[V,4"":L[O;3RBJJ^"?; M\.V)GLW$G':S&PY #43? 89>S*8K:?S'>/GIQ<5B.3O'^1575]VG1LXGR9+) MH&I]JC(I@O="@$1A##>T-IYL[;M7H? 6=)WV3&P@9#572 <@NWM@\X ;9H)4 MJ!1M_Z)VO*1U0[$(+9D039',E=@\1?TT1:<]*1L(6 V5T &D-EA>=!%#\(KH M]A0+FR @D,$%X;0CR^ME]*U3 GON=H,=DPT$G0.%W4'6X$FK>BL9IJQ(/-6R M@WH\HU@]/+8U]M6:11N4BE8<JAAO@CG@[AG,U'-[:*J8'I-4$_RW1W<[R.T]& M/G$H">O,*A&@UJR"3UYGSC(*]M3XEKT/4S92TXU_-2"VVJBB U#=8F)D5')B M=@:"1&D:*,LG56ZM;KN_&MCI+7W$G87;A8Y^?CY?GJ:NNT M-I&HEA6G:<4*EY'5,"274(CWF:@]#;<$($X75WDOY5&OA/>_AW2?CU#U8VFCX MX>6[@\3= 6)NM4!=TU_3'TXC@A1$M8K<@@^:MF=400GNK'BR$_6^>]IM&DY= M1S (5@X2= = .O@B?Q^1CC8K76F5.$61AO-Z IVTWA43( M+\('SU \.<)[KS.YS:2<-K0?"#8MQ-X#>E*Z.+^8U-YKJQ"R=N:>XR><+L9? M<'UE877I#I=ORH?P=52DX"5*"=[4O@K5CW.6Q=I"CVE:,%+ZUG']CB2>-M@? M"FT#JJD#%+[#91A/,;\*\RD%#HM;[+[$,D[CY="",A"ZTSY\U2=-D,P$-8:*Z,#>#T4U"CQXEFLDX\-R49II*62,0.O#8+1 M9(:\=1.,AU2<-C$P$'P.%'8'F:7G8MN1R<6)9 L(YVAGY\5",$R#]5$+S:7+ M3PZM'Z+4][2W3HZ=JSQ<+%([3]O=5'X^7L(B[+Q>1A MTZL19TEGK1 P2T7<1PU.E 3)9"0'4F.*S:^X;$79J5-4C9'SP+=OKYX.?*Z[ M*3A:X&_F*TGF59+E+[6;T?9 MJ7-= X-N /5T![KUZ*BSB^6GV;PV'!IQZWU!FA<,0:Q&.F#RSPW MOX[U.#6G3H"= %1[J*%30-T>=*>\SSE+"I;":J2RKH4[20&KYQ!*1YMDZS#S M&9).G>\Z ;3V54@'^+IULO7H!A_0\6@M VF,JIUB"D2I%$B4)29F',/63O\6 M9)TZ,38PSEHKIB^L/=CGI9?<"Q9!>RU D=,((8<"DC/R);GC5K3N7_T$.:>M MFSDFM@Y21(^8NMSF?5*2F9A :*QMDTDR(5,X7!(*#!B2:9ZH>(24TV9=CX^E M/130(XYN[^D\FN!9;6&"M8@]!B 281 C66R[DX&#:U<,:K/G/\1&UKRJ^ MHWE\UT)=S,KE%1#Z;K/<_2./'RIOOPTWC7+VZ[J&ZQ=> U#7ZWZ%L"=BS1MX M[L Y8\D&.8.:1\]XZS3.(Z0<7O?P!:<7^#,MQ$V7T6ZZ8R\62/_E6MH168S& M9PO21P.*H0)76+T8*;,REBFF6E^.WX/,T^;L6R#G85G$L+KJ8J-;V>\1@2:0X\:Q@$[%UFQ9/;",'+P30?BBN3&M-ZI'B3EM3GP(R+21 M>P=VY1WI@@BH#69?DF6P5M=VX04 TXJ!]PFE(7GHG3[ MLL\G"#JM7]-(Z0\;_3;20 =P>H^32?7"IOFW,/\;WA+62,=@+"\9F*WM]@O% MK)$Q#9K"5C32>VY;.S2/4W-:[V88(#62?00;A)4DIU:-K6@_ $C)>DM1&MC[P?8:DTSI%P^"II18Z -4#(8W0 M*..9-\#)$5AWEO%2*N I!QLD!L%:)Q\?$'%:UV@8X!PFZ9Z\ZIN[/:,8H]7" M$0M9,HH7ZW4>AQ0=H"M:6^N\:=W48 ,9IRT!&-23WE/6'<#E]]ET=I>+J[FC MUXW;L^8":34)7OMK"VLA1K8:596T]T5QUWIDQK-$G?:4?P@HM=5#!UO6Z^D7 M7*SZ>JS9N9K/.$+A5!!)@':QU"/ B')0)MP=B'8&$)L?0_T,5I.&Y(U5OF# M:4\-Y-\!CE:75A\5U'I!3-T<<_^$93;'ZTF.N'CUE>1'ZAM/P_S;:_(D5HWWZO'@ M;)4*N;;7EG/# ZTJ9 5!69M%]-\N M6+Q5<<9HS+[U^?!&0DZ;A&BC MXV> L[O .T3-R_'D8HEY)%)6CK$"!27Y9-S%>DO0@,FU5,_%:)JW>GB$E-.F M&HZ"G'V$W@%V_@/''S\1W6=?* ;XB+]?G$>O9<8E%X4C&6=69Y[4 M\Z48+0/'4908C%:JM3':E<;M[-1W59@[J)J^(QBN[3-BC$X7 :@P4<00!3F% MRE, @4I:86Q*K:=8[T3@:3?*8;&R)S!W5UR_J+PT]0\O]PCZGW::0W)EU0W5 M09!*@@N2,<$*M[%U]F!'$D^[$?> S";*^TYO9FWHJ'J7HT97M#:]YQAWM9[E MKWVCM?5;5O,@'KS[IM5DX2Z[.EQ+V]HO.6?ZBI.?J;U(@<6@1?.BS-U(;)L4 MBSREQ#.#4*P@?HV'P*."A%KFA$9XU7KVUNY)L6,T4VN.CJ>39;O(O8/M=9LN MSV?+Y7P<+Y:U/=R'V;J'XK7D@M5R9]G\_=A@N\Q7P.GUWM7,)(+R1CD4*=( M:TUBC (AA9""\ EM\^&!3Y#33>?9P7WM5CKYCB8&W,G[7&XJPS0A8\3T&UWG6>HJ=!3JH^\^U\ M]F5,DOOIVU])[*^GUU>ASM)R_&7MA5])((7"# $#C'?U2I329(KKJ; JPL58 ME!>M0Z_=J>PFNW48@C:DLH945P=>X=UD'4L6)4M($JJ37)PARU_JH0-';96) MY *TKL[H*$DZM+:?S)/N(OH.<'.3)%A\F%&8-)NF\03OL/1AMJLT2V:2.-? MLJZ=F3 "^0<9T*'EA?YO0^O;_4/P<>)+3,=%\(GTYC1>J9B^GN!E MKN#LO(98_[7Z?"19410]T>[CA0"EK(1H"SF^6JA8N,SMAV!L0]=I3>[IT3,; M6)4=P',ENP41OF'0TP^EB;?C) MN!LKR?#3RG/$#-,0,!7PF6D=/8H<6M^7WTS):9L'=8?%!NKJP$"289^O_8U; MSD:M#ERL#3ZY(6_G>#Z^.%_<]*=8C*3F7!=?ZHT!"ZJX.N]7)) 4-#))C8Q5+R%OO^,_1=-H62=U!M:D*.["TQ N_;TGN1?@\7H;) MS0T9U,ZB2F \1UIN7$%TSD.AKUCBD0*_UEO^]M2=MA]$=S =2*U= G;#I&*& MW*A:*Q"MBW4,HP?OR?%)V3B// J96I^5;4/7R4=2#(*)9Z%WH(*ZV+H? MR>59S4&1RT&[!,K)$D0:158B+7U!@/4 M:BLI1V-RZY&(_ M2D\^ZN(TT&RNQ$[!>K4$WX9OJ_57DC0RUCONHIM?]>'Y!=(Q#'$_6+LWE>KJ6Z*WOC52T.07&09=ZY)9\ M!A^S!!FS%B4DE\H ?BL1Q'00HZE78+ER@FGCU/!;^Y,DGKQ1]FE@VDYM':!R^QJ&D4@RLT ;!T?Z0S%R MK$,FKZ58PYB)N6#S037;4W?B]J-'KV<:0FD=E)<_PMDZ*[M9D,%DP(R>23=4^@0QVF4,@I"4F33UT+"[F1-OG6U9Q;$=9EE6O2BSR:O6RCM"Z,YO:B' 4AHPU,@HHV M5L$E\$X;\%X%^B1BBL^7D\#=.T69 Y,Z>U9U!" M/130B3C$*,$82WM"*#;-W>]5FBNHQ6!H-=4Q5U9.S>X615NS[[$+[6Y/VGV:3V_JQMF397-9?( MH4A0UM:^BEC*4+&7S0'I/6KN,7(8VC(,JM#MS^7JQN"!QWML! M!/F^&/5J:DX!A=)!Y#E!)ZC)J.8:Y/%Q%_9A+6D7K(6$? MZ1^U7PD)3RL'.#2$=*,%I%RE1ON_K=RH$+SI%;$N@;+M:1/L/8S/T( M/NTA]FD,YQ%4V\\%L^U%/!)>HHO>@&>:&$RH(( M0LZ<&>0D'$^1MXH9O$'2;.8AT"D0,7T:OI[?3, M<=N5KG("-5-%$:0H$:2(( M%-D%+(&\NZ'8_'#Z>Z?ML?"@ZO9UO!@YK6*M MS #K>2'/G_8(5\CT4NBLBL_,FN9U!D\2U F6]M#T8Z Y6.P=8.@>#R]GYV$\ M'04IE*\M T@4Y/;JPL%C'9?,DY6A).FQ=W\;$W<:2LZ!H#8(%KI &[O<$FRP?PJS*?CZ"9\.C59!S,.0[ M*EDG"B>PEAFEF-76M#YYV4S):4](V@.I@;P[0,VUU_@K\?*:OER,C DA:L= MF)I%+MZ 0XO@F13%):$SAJ%"L6LJ.KFIVC#^VD_ '4#DX0'>P_S&N]ED\O-L M_D>8YY%(/'CN NC $VW3M3Y#H81(>W>.S@6!PS?=>9+$3@*U/1'Q;&>(=NKI M 'VK$LK%FXOE8AFF-8T_2E$EYY.LB3,*98VN$QA=O=N#BEN1K4J#]&2^341O M+>X:JGQ3I^6]Y=_-*>-# 8VR+]/NF60B4VC D!P"%3S%!Q$M,([U;H(D]V" 6KT=!V@= ML9O<(_8 M/&XX8!Y3MWM#^0O.XZQ9S$BBK'<,,+^\F)-+L"[T6WL*FZ]J^5C0!XT@>:YM MID0&1\$U&"=MQA@E.11#[+4[4=E;([F!]^+A--B!P7V$PW\/DPO8JQHJ5H2Z'/6*RPOGG%[_-4G78"P=$AV$Y#75SD?(JGU=H:&6Y] M3C9 \/6Z#%:6,M= K-8*)5><;MWO]5FBML*<^[-C;G?]G!1RM5CT:4?CIF1W M]6-G57K_3I^1,0_*E<@+!]3N^*DE!22Q;2_IBRQ"SBE KL-I5 X> L\(16KB.D7#2NMFFOO0 MN5TFFGW/4#V:&KO8HF\-6=JYL81TS%J!!GA$!Y7+$HO?9J01\Y0>9 M(L$S%L%RSD7.)L;FPS'V(G0[O/XICHF&5V0':+TSB/&1HMG5"HWW=Y-W2-)> MC)?X'N=?Q@G7TJFS'#].5T]91YE2",%HT4*QOJ[>9*IO3TM8&Z%\TB8W[]

LFY:0B0B=RR@I>"RGC3P$,$%4VA9"/0L'6D-2L_72S&4UPL:*F\OS@_#_-OL_)^3 :XC%-MB;^> MI%A=F]EDG&I/KCO\;7=S_\ W-KC$WY+G1O?Y'[[F5D=YJ714%GB]1:D<\^"# M=%",H[\(T\JUKHI_G)I#3=E/83%>O"EO;]L*$OQ3\OY (OYI4OM(2HU.9IUI MQ08.BI'7'+0VX$3R-KN0BVI]+'D(O:3TEN5ZLG-Y][.%SCVQ@\':BNI%%NWYG[78SF2TNYK<0*!4WLD@# M).-=B:V+5Y^BYU"KMNG9-ZA7TED3@@!?+#D*3E#,HG* M+&1(MLC"7>NYD4\2=%J[U P7]RU3.R7T:7JVN#^ZJLO>PP1M^^@&IF@O+MHY M6=N\^ZIT]AJ5/"K&A-/ 4K;DZ2<+T5B*([SED9=BM&^=;-V3U(-*)K9XY\W2 MNEE9*=A<0BS@??4F"NWG03$!T2<3LAB69C,&W#AV?):K!1(C-+]@$>^V$],:JFNTIH#2/$"(74). KGB5N!]@.,36 M])W6=K7%SX:Q$,/HJ4_S] Z_X/0"JY3K:($JOL4?X^6G%Q>+)=GD^5Y^V?,/ M;6"R=J2\D?&Z?.NM YYKU/G$;:@CVX.1@E"GR&G7/$%B5M%>Y2/:UM48CU-S M>'.4U9-_OB7=_[@EW%NYD<12*,("5K= A21HA]8"LF(N,58DZM:V>EO:3FNF M&B'E81>5 133IVUZ34^8?AS'"9XM%KA<[.DV;7I, _OS+'6-+,XOLUG^8SR9 MT%YT_Y4W6])-UVA'$)+.@42&H*SRY#H+!CD$+S,&RYI?K]Z)P,-[JSSVAAOD M%ZZLS$*#R(JV?Q,S!!TM\!"2C%H&[]KW4WF6K--:H^%0]+"]2EL-]6F;?JTG MMWLY1Y>_V< ";:*AD=%9/_IF)) 2Y$Z[VCXPUBRD=>"M=Y!$D,HG-":TMBIW M*3@H0?0K$A#QLF/]]./EDZ=Y?:: JW_?3CF4+**SH+6O#:>)ZRA$!O+U47+# M@I;Q.1WO_MK36H<#U'TGRS.T#R&2=5QM31V:!]);GT;M M88U,K4NZ,ZIOGF(M;5B.>;!8'2.)TQ@8U*@@KDYCLC.3BNB651 M;)'-NZ/N2&,/3>7W0LC&LN&AE-.GM5J?'7X(7_=SN6[_>I.DT"/4-+(FU\_? ML,GQ7**/I8"0C),[37\XR2WM/$*[$@)GS?//3Y#3H(GN_4??P%8X'I37!0JG MK5QE4\"C5. \"X4V6([-.U$^1<_)FYLVP<2&/KEM--"GX7B/'ZLQ)&_@%YQ] MG(?/G\;I;([A];3,YN?[NS=;/+:%6[,K]:T&N*W?^PX_UP9]TX_72(L.B^.U M4H,A;58Q&@@51CM!SLXMQ[[B;\L^"L++0W>Z%5G7R($*46 M8*(V)L62"S8?O_4\62?NT]T"&P]$+%0?,40!5RP+UW"GRRV:*.)C(W,).=F) F.'@PCJV)X/LT'(?="3O= M?;A^[L6=ZGZO#[\&W]Y\UZ MHS7% Q<"HA:E3HC2X%3QH)7GRELE!6L]>'([RDY>C=T")8_<>6NIE YZ$_QU M@6_*J\5R3%$.+D91.BY,'0CL*_7", @A>0@N,HI#,:34NNO<70I..Y!B(.@< M(.0.(/([_G%++G/:%BZF:3WI?/,24#P9FSB'4F\T*)$I0$E20C0N:8XB1]W: M%N]*XVGG5@P$LT$5U:?#]LR=UM7\M"'NXUX^>/A;N9LX.,;=7%Y0>&_(EV=H M0&$6=30A!0R"%>51.@RM.S =Y6[NNHKN-PSU\?G-]!VFBWGMT[7:WF\M#1^2 ML)&"%V8I0EI-$,XY0$%+5IOSI$WKUBJ[TMCQ#=Y=T//H#=XA5'7"[715TO4B M+#[5N@?ZJYXH?@F3RTJ(EQB7[RN#XV7=#KZ$\:2N_-J6DW[F[+RFZ_ZK'K O MEA]FUR):68<;2>0015)* VTA)(D@:ECO(L1@G2Y2&"[T#)/Z^(UQVUG M>NW 87R:Y[].YQ@FE>EZ)_;M;+&ZS?$8ZQ@E.O)#0&85:TZ)@5=6 Q/68C1< M2M?:#CKS$F3#G4*<_%@V))DK]==H;:8.@]F@H[ M@.O[] GSQ03?E)H/4GH'D28%2+D&HUWV]D[YH6SC/ MS:>1;DG;:>>B#0;#0533/^1^">-IW1=JG\;+0=1O;B+?MSA?55Q,TZTUYY+Q MT=$6P5.LE7OUZ-OR!#EEH;QSQ:36K9.:,W':T6FG O' RNXS)[5E-YC]!X[9H&S%7MVV''"TEHP@"8:RU+1D)3* PXQTQ[-=>FF,:FX\A-FQZNQ%VT M=\PDD]^RC@X(A^WML/KN -/ MXAVF2_\\K=3ZYF*Y%>?WN$X,N?!"@'&L-CK%!.0^)1#91F5*8%&U[R32@O*3 MGX4>'> GT'B?/L0C'<3V]QF>?N!P/<\&] F>[UR59:"8/&0(2A(4=:IAN^- M=HY $+34I77R\'2=SV[@[Q4Z5K@#H7EMID4N=%0Z0@Z94?@HG$FMITL\3U7O M7E@IIHN0C$'@=7HX5P&< M" BR6 (&X3#ZUI9J\&YG[_" ME/?TZ:+0V^E[]X\(+,\A&*3M/'I003.(VFC04=$:*K'H,E!3M%8L=-L[;1?< M/=([[21J[B Z>3E>A(\?Y[CF\TVY%,<]ID+ @.@*2"60MI5:G,#(&PYH!/), M/#?'[E:$G3:V& B1[55R\GJ1#4T)5RTT*$@BH=4*F9_"I"ZY^[&^\8'B>W20 M=4B@F"T0A$3(67CELH_!IN?VY<-(..WA=V.('5$;?;I_&QHT[N_P/?ZP85I) M#NC4[=8*L%CGK$8/2=;)A3(G\,$P*(;IK(L6GK6^Z'K4AI*W,Y04!!%R?R;? M8(F_CK_@@]?_].VW\)^S^>H0_I8;X(N2(D@H @,HZSVXK&O/57215I&D13I@ M(GH_JK^G=I2[8/"I#/01]-N!FW?%\:H\^S%.?[Y85@FOJ_FN_=[IXK[KH:Q6 M/"<)*B$#Y1V"X\[1]L,2+RYGALWG?C:D_[1.X_%1?G2=][GUKQM/[K_;W_G] M9IU:!]S3[S7PC(27A%E1P*#)7Q2N.F\L@T0OH]3.N]"Z-JI-O]8[3UN5&-^% MIH\VY!@5V!P403,+"$'0'\5:M%YGD5M?('V$E*X:MNZB[_NFHX6H.]CU-K6> M_74LW5]RW-:: VY]]]HG!D4.BB,[Q60]25?6@M-2@#5< MVIP*?;OUN43C!IO7 , M@1A3 <^U<1Y%@1WLO?"9FQMGOBLTOW_A?DMSL>SU;W*6[FGI$T0 MM. ABNIOF5J;%NF?@H5HHRHJA.%RBXV9.>WQRB#0/Z6Z3WW2MV+V'7Z^F*=/ MQ/+;>>U#>GYO(8M8:NM'#K+.152R#A7AOEX%2CK%*"P%#UL=ZFWSMM->_VL ML&'DVFE<]'P'VP/BH:T??IQ>O /&/X]V7>6$LU)B <-C( !6= BK0(14#XTQ M9-GZ)LE@'7FO#>[E(?FBSC]\10*<3\/DNA*.?(Q?9]./J^3WU8'.C4K"I"KE M_CEW=B%89 Y85B2ER#3$8I#<#>=YBLK9W+QO\6#<=-K_=Q8CSUJB!;"0V:#'FL@:S@37 B***+5M&$*!\[5H M:-+,T*!6'NJ8KCIDO4Z9D @F:V>+9%R:X;*9K;@X<=IG6$2?1-5][LC/-$=< MNR84*5R=>]4IMOPC2"WYO48W2&]5"8ZJ2$EZ4'5UO'.,@DN M,%M$\9J%UE7M1^D.>?-L6H95X&+49%HN> >6-(D4RUJPVF?("+7RKKHM1ULS3Y)67YZ0N2ES%8;V$/^7L[JS;%10A*9%;4=>O6:N%7@1=;@ZKQ$GK)BMG7. M:"<".\%G0X0\!L+FZNH)BZ^GY#,O5A+CO^%YQ/DH8*XGHL2%\1(4>@/!1@1? M-,M!E,Q4ZUCH"7(ZP5E[$#P&MP,UTBFXQ"4KTGE..T, +E0]?(P*8JW[)J8" MT<(X;WZE^PER.FFZ?!)P[:.1GL#UT[=;8OMYCG^_P&GZMC+[,9D0C%90N]K4 M3CW1N058G6VHK*&SAMQVBETZAMK@>_'!IQUG4H7@4X*7% M.F:]=L)7#IBUM%239?3Q,0*&>W1U K968-@F2#A$,SVA[=;]P>WVB5_'4WR] MQ//%R$CIB@\./!.&%G AEK-"8)([J[DI)-;A,W^[DMW=8()3[-!'TGH'0/]M M-L5OOX7YWW#Y\\4T+\Z6+\)\_HT6[HJOD6:)AT+BI.AK=2](KR>W*I6T0E22 M^]86]1F2.C&FQX+(;#A]=0"_VB,%YZN6W^$SSA]PXX7)BB0E8SV4]YZ!MXX# M3PZMY13UQ=:5%$]3U%W\_Q(SM 8%[=FU]QC MCKF(3+L(.7-)S$4)+I8"2=MCJ M;J[04:'97',=H/'1Y78SG*:6ME]VD;\>]W7V<8[K?,;ME:BSX,7(#%Z)5.O9 M*<2TU=G12A=GF:>]Y5C6=0_ZNQLXU(?A'1H)/:^".SP)'IS/O%8)5.$*"1&= MA6!B=CHS;W/KZTS;T+45:NU_.]3NJ[G]T3A;ADD;-,[F./XX?7%![YZFZRF+ MBVN!;A#ZB',>LTP&T"4!2F=+7I#W@)E9GV.PV/P:V3YT;H56]Z=%Z]":[%IQ\BT5*V(FK5N++ E:5MAU/]I,3J _IH9 MU6->E:B3R<.# >7#799X^GW#7Y?8@=]C7)A01>=2#UVER?5R;$D0>,B@K43O M%&;4N;5]Z/K"1,BH(F<*K!!VW?G.>\;HGQ@]%Q9#\[GN?^8+$[O@J_V%B5V4 MV<&F7HW"V0/;L"K'0&9>I ]U-(!N.X5%EPR45)DQ2*)1,@"*F2*NDIR$"UA0C G MM6B=B=Q(R*DG8IT(6H:'=0*7+-(2"44*\I%UJ;6J MC'8#3GP*X:++6433O*WO'F2>>HC6B5 YM$([P.R&K,7*5;&EL"!2@)REHU!. M<"!6-)#C8CA9>TS8NAKN$5*Z*X,[8OS10CL=@.S#/$P79=W1;=U5=36%DU73&IS8FSY*(.C%P!GD]037@7;20$IPI]W4H=3=!;!OE08^<'*"*\I[A36S2TX5ZE6#S0(V\L@D-Z*D M]MA]@J#3^@@=P;.5TCI X,;2P$M6LE(^..^!\SJST;$"3I8 M+0$QV1Y5JTO MG#]!SFFCHV[0UTIA'6!O4XG_QC4ED"%W3@&)+8+2#,'%Y"!)R5)@7GK=^M[E MMK2=MN:]&U0.HLH.('KK6O]JX:WFVZY/&7CB6IH(F 4Q4BHCJ7CPVJ:)Z>ZFT#&#]R8:Z@EJZ^Z?5\)Z,[V^>%_;'2_^.IW%!2WU*KA5WYLZ M%X76VV2\4OAM*5RN:Y\HZO3$...UB)0V 0C&(]A45(F2UJ$9K/RB,2^=G)(? M!K7' 'Q*O7> _\T!W6J65?GKZ=?<+$\O\6)].2.( DC*YTHDG,)?+VCIYD*BFDE M<_.F;H]3TTE^OB?\-5)=!R!<74VJ0U@V<\,U&A^+ .$2@HKH(*H<0*O(G+6% ML^8#.)ZFJ!-_LR9G MFT=JEG3,.^RG"*6.I/4.@'XW1W'V)8PG58P_S^;OR:LY.Z_CN/X+5[,FUT,Y MZG"NE.87F%]/B0Q:YF>%_JZ#*O\(TU1_\P6Q,5[^.ELL1CXJ$92*H+DA;:2D MP?D407H>:H-3)5/K";S#(U-@G=@6*"XA'EF2B^ MOT-X)T[_=P;X_76_.^#]&O!3_%@)^7 D)^FQG6[$5*:P!@4$9TI-BCIP1C,0 MI62'F4F?6E_LWX_2[GS^CIR:)MKMP';79.6(%<=%]G6_6[ MB;\/%XM<]RTDS+#(E'VIJ9L&3/4@%MF'2")]'^VEO?M_8Q>Q=J M)@D]_4&Q)P=G@P6?2JKW*"WZUKF+/_.M_5WPU?[6_B[*[&"W?JR /J[&V7H& M1G#:1JQU$&K#5YV4T,%("BB;3X,XX+Y,Q_?U=P+$EO=E=M%.!R!K6CQG)7DQ M.7+05IEZ(2V"1X? (A?$OHPFMK:6?_[[,CL!:LC[,KMHMP-D'W"!(IEBA/>U M:"/7!EPA G$;0,=Z=)YX(+[_SWV9$R.LW7V97=3= ;"?*GX/27JD8!(\RP*4 M+YR"368ATUY64#F/O'7;K4-O*WP?=V4.@68KA76 O:>O_: W13I=(!O'@%9. M!I^]A*)$-EK1XW)_=[6^C]LRAYG&5DKK (%;7[(POEAMLP5=;YZI[#W$'!%B M<*DP(9)6K9W1_X;W90[!Y2"J[ "B+9+-A2%7QBH29#TD4]+3#F'))S$A".VC M+CC8I.Z!"\F(<5:?ZPA1(NU MSL$5@](:U3J*>I*@[K)5P\+CR1/.0W2U-_#(UL?948[C:VOV\?1B=K'8?,+R M*RX6'SZ%*1>_T4]^6HPPBL2RXF"=I(7/58&H3027G-4E"9YMZ\E2;3DX+;@; M@FNG@_E!]=R=@3V4^UL%.JM22RF92^@XN?K.@RJ\@&.U+@=1DE:X8[IU:X-! M&3JM]_&]K(%#4'!H.=8 B^+WV33=E[6@?3('!"^*JR/E$@1'LDX2E542A6U^ M0/8<3=TYQB?T/0[4V)_ _;A:BF]6EZ5J%C Z'4W-O!1-4;3D"6*R)&:1HM62 MHW"MZR[:YO[_W!!X5\55 )6M!:4GNF*+(.Y$^ MI(B\GKUTC?N./9"NE\$A0.C0";F1L#8Z1^LALLQ(PK:6>#I#8L8L0OU.\QF: MFRGY_B\JM',X]M).][9W\T(;:962E5Z!S"K7XQQB+Q4)@H(,8SBG1=^Z8<,^ M=/;D,.R'CYWL8P-E=7#9<1\>[UMZ%@(M:X4@L 3R?TH"IRDDKL?=F>M2A#ZN MJ[L5V3UM[">#ZR&J//@BUPE'"5Z7[B\_X:T?78\GJ5*[$>01;C5L3\01+S7L M*9ECW&F(*419G +C4*TGQ;E@,_"@LXN.D_Q;I_:'O-/PR,(ML_GB_O7[:Q&D MB-:AH'TEN-78' O>"0]<%Y#9W?G/V MJH_+W\+RBOG:]^'G\1?\\&D^N_CXZ0-._S>&^>*.$$8VJ57E)0@1:5LIF"!: M)\&YJ**-7KG8VH-MRD!7KFU[N#US)_QXNO_>@/]F>L5[%<,&YHFY(%/*0'^3 ME4$5(?A 3ITO)0:*"4)S,]V4@:Z/@W9!TB88,_CH.7!-EB$)GPL?-C?X#('=57$,$:&V M5%('UGJ7O6H\)3^M.F?77(],\1:=*U!*JIV\Z^&I]@EHI](D4FEL:6V-#Z.X MI^BS*90.\$$.U.MWA.+'@HU;C#N?N>$22MTV5.#D;*$W@-SE'(S+)I\TN_(4 M\3T%F#U@NZVVOR.8/QI8W'#NM4XQ*46#0>%B47*HL!BO;_@)(/(=83,%9+_;U-N/L/]>VPG>3P$ M'T&/S<*X8YZ9_Q[F=8+]%QSN1/S!*X8_[WZ:JV.<9F,R*C"K("K'07FSZ@:D M(!EA;"XB)3Q"0[J..O0EW-B(=^/%W];C\!3G27E/;.A"?YC:M$ (0!=9T%QZ M.4 RZW%ZNL/@Z]T,11ZJ"UF!,;K*S\A2FF^N3Q'4"Z .U?O]C;.9$DZ(J.J_/\;)@C[_ MY:>W9.M?77GCJ#V!A M@\J\ ^OT;Y@_4O3\$A?$X%I-U7A;8S''4B![RRAZKJ(JRH+P#I%'DY1HG M3$EW!X)'=*H:Z*9+A%TM1\ZBE*E \M5+,)*!DS: =5IR$611& ;'6 ]N5 L] M/PN=/83> 7BN&*"5M;CDZ<;5O+2X-F9N:WM%P^LH:-(Y!),XV.*E*TEQS*UG M=V]!5F^0VD?_#[SRMLKH %^_SZ;YFJM+%B(*GZ*KQ=$^U]FF&J)4'K372H44 M$W+>&$\;R#CMQC<(?@X5=@=XV13Q+NJTP=4 MF^78GN'DY7,%I_&G]>Q<+;2 M9PHK4F*1N P<@DT,+ J5"GF>UK4W4?M0VMVE]A/GL!KKM@,$;V#C0:N*1AT+I1D*Z\,H.5?*&R7>'2;P# MV#09'YB<50(1O)/DFWB128@L0S0^F4B[@FC>&N98'9V/.1;TB%ONL;7> =!? M3[_@8KG:44;%"J-7HEN-ID")$#5Z0!0Z^.@EMZUG--]Z?7?GE<.J?M9&#QU MZ,8](0&1NL+D['QV,5V.K. \:\O)R#-1KWD9B#P)\(77AB%2Z0':"5/_QA]A.^PS0)B\6XC#&_O)B3%_([?EU> M]X2..67C2@$F:R:S9!*JS]4[SJ+H7,_8FC<(:4)Y=^'P45%\ NVWGD9_DB9& M-ZM_XUB7X1L8;4? $9L7[2&18Y1ZJARU6N4QD5/ KHL')[0%4[W8:$)VV'S. M:]>EGJYDRTU R,Z3+Z]J]KY$#_6"HU1.>1U;'\G]F4L]=\%7^U+/7939@:_Q MR"FH#RQ+73(475O@<>& 1!=!2L]2/2/0MG7!W0&5"!V7=^X$A^TJ$7;139<( MN\R^N6RS9H6#B,Z!$H6!%^2D9Z88>I.XQ]9Q^'=5B;"3GK>M1-A%Z!V 9YO# M[R@IM&.H 'EMJ(Q.0" ^P"/31J&)BK7>/K_?2H2=]+]')<(NRN@ 7YL.Q[4V M/'*7 24C%DP=::-]!HT,=53*)_??MQ+A$/P<*NP.\-(B.8"U@8E'!*F1['H( M'**WQ'(QH:AJ]9M?H/D_(S /@'XO"W59?+UB>X,X1C)$R63.P$T] M2C48P1L506#R7G 2,+;N=+OH':_I M 5F/!1!=9AO.73MFWGM]M+5XAVGV<5H[ M[[V>OJ=78OWFK+SYC/-UM]=*1@^\WV03([2Y< 78ZU6X(/)H%BV%!@5 M"4$$EI*2*(7YCE+?5\=1;Z;W5NG&4CZR$D]&D(N1< ?@?Y_2Z-KMV'<;*&F>J6.$#\%+K M'K2E=:TE!X:6Q1*D]#C0O?IMR.NNKJ0-3(=24)_]N6X-ZWIJ?=:/9].ZV81I M?K&Z0'Z(*]S@K0W@]Y+#.@H#L0@#2C.R1!RD2%;1*^M M"LRT3K3O2>K!_3^W>^TZ4ZEEY#88#]D8!BI:!SX) 5*QR(TS3(;6MS9VH>^T M+NXQL/:@F^=0VNM@=[^.CU_]_6*\_'9C.E9'T$+PE!5*T!AY'>JMR%4I#%@= MP5@20R%:9\B>).B[P-X>.)@-I90.$':/A\MSQ&*$,LER*#*0PQ-9G8),3% $ MJ!+)R"C3NM7)1D).BZB&BIZUEGH'T-EBP5T>(W-3@E4^@O+>DJADAI"-!LER M84SX(ESK,]6MB3LMQ!H 8??M< ^M-$S#-P$<>1 WTX)OKBU=A527'&;CF M9 M@!.&EFAM=>R3J__DRJ")3MD!?;6M:.Q^S]P'+(]#LKW>^C*$5XP0GW>NAKQ= MJ>.2/<]54)DAD$A3O=BLP$=4H%,)*-!HVEB&@^4V))XV97AT5#;76E^@?,H= MOCD&+BHJHY.!H *O5Y(X1)98'=\A-,NV9-FZX'=7&KN'99L 8U#5]0#--R]> MGRV7\W&\6(UK_S!;+[2KM,"[V63R\VS^1YCGD13D3]+)"= M,2%QB:7]%KX]>=WOW@?@Y#XH!U):!WA\OYREOWV:34A;B[5#/N(%G4&2C\9Z M"E0B@U@$0DZTHS"%+KC6L'M(Q8G1-93"'Z13#I+^WOCYC//Q+%.,/U^V.89. MX_5)SLW5W[0N:+D^X-DDSE'1045R(<#XVA/<<04A! >,66YRR-SFUL'QGJ2> M>/L]$AZ/H<<.C-Y][GXF@9_-TGA]4+E\NUH=3W-,7DQ12EE(-593GEN(NM"J M-1B8=T6[V/H\^7"J3WO,?"P0'UF[A[8H&+P.B)A\6V<@DY8W\,I'RE,\IT+U MU*L_Q!/)FM?V8-FGG*)FI;0^[#R W-.VQSJ:(3Z2/KL'[Y5@G^!X9(5%$G6M M6+((]0( Q.0X&.>$=UQXJUH[K >2O!6(]9\9Q*WUVL'D]0W./$LJ24GQIA5: MUQR= X?>@\Q9>F111MMZ>.2>H93YWL%VH/0/#*5>36^;PE.4E=W<,+CNO525 M4<4_?'79%B\_7I'9KI(X<:V9LBQXSAUP)P(HFPU$Z1(8P9UE.OMH3I1[/FFM MF?4A">8R>$6^BS*20\C2 G+#N'7H3&D^3?I/7VNV"]8.JC7;17L=)@3>7)#@ MMF!X50S#;$H^JCJ2I8Z1LG68L9(1I#$I.8]:V=;-_ ^A][M [AXH>B8+,)A* MOV/X7LWP\-D+*R6@RW5&2Q(4*Z( RXSFI01'0N\$P#V4QAT/68T@O8>:OV-0 M7PT>,K$8;Q-$ISC%$H715T8 $W4*J4*-S9,"AU'\?8)Z'VPU@O4>BNX UD\7 MUMI $2HK"K2G:%6Y0@Y:#,1,JKV-6.&J^;#YP\O:^Z@Z.<19:*>4#A"VN:[6 M1EN*4:$>)"=0V7D(M#HA$)%)>T:LM.YM^]V5M>^DZ*W*VG>1>@?0V;4ND*F0 M752V%FL3>T(R"$)G*,X'#)$7SUK?E1BBFO/()>X[@>+ RLU=--07 +;MT0P51)0V168;*"^.Q=1NGYVCZ+O*->R)BRSKAO=33 =S>X1><7F M MH+KJ;O+)*JM4NX!YE]EA?OAY,'Z91AE=8!+E_,%LLWY9+1D5?,%%][/D=1 M&S]'"1&3!RM8\H4IP67S6:*W">BS-+@)EO87=.O!38<8L042'9_.IODE,3*9 M?5[%_U\_TQZ (QU29H4L?4G6@Y+"@*M#S(45NH3L9>"M&_L]25"?);J-#%,K M1?0#KO9 AUYM-:*XE+K_>X9DOHL9VV"KI;*Z =BM[I%7KJ)X^D%+9R;1L3K^Q'K MGR,/$1>OOA+GI,KQ-,R_K4*EWV?T77(P9ZOU]WI*_ATNEJ/HH[ :&63$.KH\ M)@C"2$Y(#M]%L\V@78O(.@@H%BE!HB5V9KURDCE^6J1&VG( MP=4:A+2&I*P81*L,)"6*]1CP^HY=[O10WJMAMPV*A&^^J5;R=A6N=$7+_WVJ :8[2S M'H&51"XCTQY"X!*TSAR+*3&(UL[5LT0='*2D3Y@O)OBF_/_M?5F36[>2YOO\ M%\Q@7UXFHJS%K1Y94D@E.^Y3!=82^[)(-EK6[" MKBQNGD0P0^BG@5-U*S>__#R')58E%YR'I*Q%.G(&1P-$_'!4<,2-I,PX >YU MZ;NS#F15+E(9! _38973,MXR0^N+;^&4^-]RJ5 M+M;O0%:CUJTO%+I"K:=>&H!:=GFO8;E;5M:E#M1QF4*"?:AU0EQ(A2SQ%DZ% MZ+Q1*9E8^@3=0DJCD.JK\B<7$X?+OR$8?9FFQ9\VA]H+.[D<@6U?3C);,Q4= MBR3EL9!&+W=WHK_R[6X![*; 6"4FI;"X^ M)<@R3E%4W 1&7-*T=(G0=FKJWET-;6<*::$!/&V5U%V:F6FFHF8>)8%!4,0Q MX(A))!GF5AC 1/'QY<]35==)JIM*Z*>:EL'VZVPZGU]XZP(&=A -2B#NK<\3 MVP/2TAJJ>,*F>,>TW10U&NSUU']7>.VOC):AM;30>7)P7#J'GT>7WQ8?T]?Y M*MQ87<7>NWE['8$#/[+KP8YG5[F1UO\L_WAAG^,1"P0. MC&B%HZ7O*X_ 5J/AYL @KP2+!G;*%J[@]^.X@;VM$KP@28<@3$*1^8"X]!!0 MQ: @9'?80D %:AEPYL1!M#<:!9?!?!4%-]'Q1= 3Z.A]L!F=U]%M#F2=DN)Q0<[6U4QEJ\F>;+T+N7?N6,2\5%1%(2$)GR&OQ* MSA&A(#WC;6+J:,'T*56,[ 6%'A4C^^BEN6LRX.FV=/I!'<.7:_=?T2_.I_"; MN9^-OF>5KC/V/LAH+*/(D]SIS&*#M"8!*>FM-,Q13_ES;ELYI%(F(6( M]_ +SH4Y*2GDN256LF-/_S7CNA>8E<\OX?*9!5/I"S M0OGE-16?HY]>3D9+G-V^[2;$VB@"(C*/+[*4(8LM0](D\!>%E$R5/FZV4W-X MI?O35E3O1]:-QJ/%SX>?_9\8+B1W(>5I]II'"KSSA R)"M'$P5WQD219ON1] M'PIK=VLO@IJG)>^#*:D!WVXG=[G*DKE$;>XZE MWTE0W=.U!L#V4D$#>+I_TG],K]=$?+'C.(=@_&HTG^<>&A<$0FH(HPAB7H(7 M(A5%)EH(MR'@3Y[H0%/I%^7=**M;6S(0P@902@-0>V6_CQ:K+LLW6RBWYGMW M]=V.9DNG-U=":IVL9DD@HX$SGKA"CGB")-9$F@";JG@:I!-A=2M(AC)EQ572 M ,[.O+^9G1A'/W)^:!EN^Z"B,!X%[ +BWC!DL,I]'Z/AE!/BB@\XVTA(W:<: M0QFL@T7> &YVGNOKN>OYB4$VN7FP*\G'NR:Y?6A .OA@2(C":WU,#VM-5]T. M7S4 M["""CI%C*R>QX?-QBBHK6;XR9=[D)ND,:4/ J\,F,(N-Q,5;%0V7C[M=>9>D M;[1S/KK*?2'3%_BO\P1?A[];WQY&G["$P"DP#YN:"(.,LCH/DPG C-,)EQ\= M6H+R9O-W^Z!L2^O_8RJU ;_@8*Z_+.QL\=HNUIV.- M*Y?EO7.K.)=)@)7+R^M"P'C4#[B!@LO0WZ ^(E;(>["U02N%0L1Z%A:9"L1\Y2A;15 MV@90@:/EAR.4HKZ1!/H);X-^0#B5+7#!E0#I:6!*"(]X8@RYQ&%S)RH48YAP M4_KA3B?"3MQ^]T1-'_#NI<)3P>4NV<(_&$T#N2 11Q=D0DSC .<2,*]EB(A[ MQC1U"IOB&=E2M)^X63XBNDL#X423*NL?<#]7EWC?,BDR*4]QP(H@["F&(-0G,*[8(RHUCI;@X$SIUT_-)SVNRCU 9CK"XHRR-B3\CU4$\#H'O P6@&6W;\\WP*O,ZO M@;_U>S?N$Z'48,24R<\ A$4F,(P<$8DYPY4TI=L_=:&K;<#UPZ MC96 T,X6V&NF?>!6>X6SI*,$2>;!PH2M^'S!./A7HB:C.P M!U/OB68^'Y28SQ>+Z4>W #W=_O"ZCM-.PEV9W9")T4/H.4;>M)B\AD^KTCS@ MWK'<#4G+W%J2(NV(1L;1F"1.Q(?!BDS*O^W<_!3B0US<5!H;A077>38K]01Q M"&.1EE0CS;"2/. H4FF'^%FB&K&\AV&CXZN4GJIHX.3?SM"]TN*0A*51\'P+ M9^$7[I$6^>RQX&11AYGBQ:>N=:"K$8?U6 CKJ9 V#^='71WF>0?9V>PG>"&_ MV_%UG*;'/W' R=O_8P6.U4*<%CHS?YU.PY^C\?AL$IY\=C3WX^D\#[.YO32RV%*;SQ]R*P7!_>M^"?+^+[T8_XY+/KP%(9 M%Z@5R)KL?Q/J,?;!7M^/3L*0IX(24B!IQ;",RC&DD!7?$:BJY*^T<[DEB M740.!I7ND#Q8;PW \C6XV^/I]QC.H_\VF8ZGES^7LWINQNTIY3P!L2$:N4#< MP"]628:\#308II3UI6'X#$G-PNYP.$R'TTT#4/MDP=6^)9[2P P/L E9TGFJ MDT#:ZX2B--YS&B*/I2LJ'A!0-\H])HSZR[UV$\HLD"L03/AC.OMWFLYN>P'' M8 G-3(3S@$P242L2>P"5A /$F\&I$DHU=64L45+7W)MB>)K;1A'M3='U)M[:-RXU8& M3S29S)-(Q( XF4<&MA_RBO,4P%!C4SH([4%F71]L4-CL!]&#=5C[B'V21IW> M#8>XWY1N?2X8A;/$"$J>YL9@WB*3B$(,S@J'G>-8=9OEL=]WF\;;X1B8'D_]^%KKH^8?T,7#\% M-0VZK_.8KL?O1RE>6"^I,P$C'I,$'QK8L1);9)T325K-E2H=CW:AJ]EL1T\T M=(9;3]4T#;?Y:O2[8DP8X0U2)B3@![-\_;QR.87V@GGLD&IDWH\>W+H=,H3&NNV MAQX<@(.JK(&C>,.N>LH3%AX\5:U1X/G2Q5H)L1G3*+]]]2FJ1(J_Y>Q"5]T> MTD> 7F'5%+. 0]=\EIANU6798>HXCS+!:K_J.N6=\IY9Y)A4 $.6D X8L!@B M92PZ9XHW@3]JQ>;#^2./OW?A70K8IH"P)"+;9(Z<L<.WZ_M\=QOP= MR'\5^VB-@9/2T16\N6$,CFF.$5=4$$,$1!>ER\2.:A]W1>Y/U;1ZF HV*"?K MY]Z._Q7M["(8XI0&3];$E.U ;I$M/(3R6@H?C.,V'C,#TY'L4[*T^Z!PG]S, M$!IN('39C^4/8%C._XSC'_&WZ63Q;7Y!'"8!8C4$$L_/L:A !G.#DO8R"*DI M94=,Y72@N&Z2NU4H'Z37DT-QWJ?G?TXODC<\!L*1);G S4B-C) "2I%:-V,>*N8[:/%TX0J8"]>2)"K-%&CZ/+#5Q^ 8:,]HAX'K9-309;N MF]R3U+K9]*;ANK)8_'%(@.K3]U!AWK&?035FI2A MPUEN(H21H-8SFE5-2WO>#RDXU*Y\_!ZST":7RV775O*"J\ $21X)K3SBPCED M@S9(O[/S; MV_'TSW>392.PO/S!-J/C^L4L21]^AK$OR4N76&0H,@8'DO0>:9,4HL&E*"6$ M@;AT<#2D??ED?V:ISB^8Y5KF81?"^0![R89EGS>D@M(Z"*JC>)N9'G+EIJ4Z-^5WMQ_1UOO*B5AW8LG/UYB__#?RK^'8Z>\CK M[:S8"Z\M31$;9$(NT>(!F,5"H&2%#-0J[(MW"3N W+I)L(+0.Y;*"N)S@$/P MCYC%$,,9?,U>WK7$7/[M>L"WV_V"$ZA#R&.60) M#6*JC!:YG H(426IJ=:&EVYJ/.0A^ZS@R86TVAB=2PPIT<"Q=$@S M"%"CI29A3CG1I=V*?6ELZF#>!R&[#^;"RFD@,[63O_L[^E.<^=S;#SO!A*,L M=WZA.R1CQSEL1K@L24/((G4V-+O\ MC^]SS^^XQ0.]$>CF.@+JE5#$>D2($8@3 [;8)H:<)!1[QPE.I1_ ]J>VJ2-S M']0\MEI'4E@#AV>*!3!U#)F?D#V#L,F0X(T%PPPL<1<@8G)@L:7TSB9+I*7E4^#=:.N$ M-=4PU@951@.M ';R]742UEG&&-[\Y>%'SZ[RGRZPY5XHV$3$8_ ,4FZ-I;5' M'L,>\EX(P4I7 /0BM!/\]*G#KXB:#NUZ4E!N$M.7;[!'?WDLU#.0Z>1R670X_^7GW<^L'8.S/^TL MK)I*TH2E)G)_4QV\@H/#4*03ITBY@)E.EC-?.OUQ__NM3&(Z*@0> MSY3HJX^&L+3NU!PCWWI3:PT$>%TZ'DV00X*'D#WO3T9XQ+Y_33]FP)_NSI,''VQE8DP-MZ2_ MY%N RQKE@DAK<$YZX2@03RK?&6G8158Q+@T$";&3(](%,#5/FP.4]5C=/217 M6>'KVLHUX=XJGLMID;?&YL>=$ MJ#VCIN .E M$&^))\Y[[0A2*G=WX5$#\90A1WPBP$ 4OMMMR..5ZSY9: M,!TF]_-7]-?YNOIC2B,?9VOK*VU@+!_3 MB>5V&(Y0X"4)Q(PPB48M5>CT)/\9/&W^>D.P*:GH:5&I-Q Q/FO=MQGW][?S MS@PFBED,\8C -*?'*0B02;#R-%$:?8RB>)GEP537?>S71D+YR+H_9;1_N,Z; M^V,Z"V&4_XD=KQS=L^O%M^EL]#\Q@!U1TC XF&+R#'&(RI'.K22CEYY+E[ A M1T]&]V>G\0QA8626VAB%8?(2=LQ: #_L:)P-UMOI[%?XMXL+9[%*DA*$G8&YP\SG8S)9T(#W&C20!X8Z3 G50@CY:&++EM1M(8(:S_@. ^EJ&JV- MXJUUWNL^H/82@K@WX]%RG,U]L;R:3A:SD;M>K,(T[%AB2B%,HT9<&)8[8=@\ MXT9B*P07C]OX;[M_*$)/Y>BW(H8KZ+,5YZ3/SKV5T&SD03#PKZ^FDY7LUGUP M.?;*6V91E'DS)Y"$ ]6@$**24GJCR"!^_"#YPO;D5#+I1-2DD74.26(6Z]1XY+BKQ/U@6/N0REY[>5 MI+]N*\%A%8V09]#[SY0^OHQ;)-/DS,6R6^>+#]/% MO^+B<_33R\GR7DIYZ8D+"6GA3\#DN1K--^=D+B:G"1@CD<^,=;B1& MCHN(*?O0UPWG+^UN=7!-G@Q*?[?C:PBN,0U<,8I""'#8!8BP M38!H)27-X>B#P$453Y=W)Z\;1E_L/>= >FP/HI]FT\N9O;J=G7Q727;W,ZOQ M!>3":PA7O!.(N>!A,\: -,,,)<.B(19C%4J[\/VI[0;@%WU_.;R63W[8P.:4 MT\V/K_I\S,_\8O0COP8[RD""7B0==VC!X5(;9K"!T38:$ST*%J)&'L$*6ZHX M,C)WSB.)1T]*1TAE!QOTM1IKF7^\7LP7H ?8XI^GXS'X_/DO+ZPV8#$T1<;Q ME(<@&>28P?S"Z5I3$0XI$1N6>\\Q-?4@99B9,92284NW>]K #9. M]'5=NSOF4*BT<+;LJN"\[Z>^^2O._ CD,>XR3 MX;FA]S%K:+/Y0;$^K"*/G008Q.F'^22$!0U$#GXL2P0Q*X/G27%)BV-_:*9.]!E>N\="61B]B)WUU+>D1,E([/*. M0B!.F$&:4>3;3C8WB,$:>^"JMV=)6;R]!1P.G6@&#$EA=*12AV+7S0ZH4I#&:Q! MP-!"W#&,7-;.:WY9O):+MA:,!$L(CM0\<36"7!@!*R*3MEH:PT]EDSSAK6Z, MT_XF.0P,+V"3W+,2?\31Y;AC;.P #Y^VRA"T(XTYX3)//L2QZ318Y$ MC+QD#CL<#N=FYFM'5HWYMMW"L@*HK'2%AF6 M&^8S!0&LE!@ES**/P@HFCO[*OAQ[+^8FIXD]60EVIW Z/B>:&^Z[2E+#^XZ+H$H6HY1.)W<:VZPCQW4[[;:_S88 S@O89G>#=5Z/YGX\G2_=\1L] M4D\X238BIRW)!6H:&<,%T@DSP[7 B373I+0+0W6[]#:T2X%;,J]O>5MDB,7A+J@@Q((^YB'_'@XTGTBR*I(P75F MWJK6]FHY[D_[CK#=+5P)GR]W9V]WT+=+#AQS;5.("*OS.UJ&3T8M:KRPSD<70&GPBP+U)8D,XP011STVD49'3R2=_SRS=2*V%[\+CP.^E[M+ M[_F_VP2%-099@*_N4BY'I\0AC16H-^%$$[&"I];.PM[,UHF^_JZ[M##X3K\3 MY_75E9W]G*;/()S9* MJ^8-?)Z/%D1MP[D')D?MN]I71,.TV/2.2$T$ D#F4 M4["A;+ ")9^XA"B/25TZ5U6XW:;_%L/U^&:P4*^2[?/EL.?<,4BX1!'#&+9J M8!*B6J&1M9IPYP6Q7I4^)TH1WU13S7TP]<125U%G _[1BG+XX;._1KE1F[,J M!8^LS]=JBBMDC4DHJD@8AX-#%X\L'A!0^8JU#@@>3X?JK9$&X-1?<'=L3T(> MB/S!7L77TYQ+O@A"&V!6(FGR;!]#\*K./0I'0 X6,SO($/C"?-0%]P&P*O9& MJ9".&\#Y!B]J_OG+U]_BLJ4&UI0J^!_2)$+, /XV,M3J_!)9.T8E4:;TD;Z3 MH,8K5P;'RW0HY=6^IOH49VDZN[(3OQ+>)L[6;"VS,SA*1(WQL.,EL,4M1W!, M&25T#,%VNW'J_LW&JRV.!;LA-541@//9XN)\M,CNTKM)@ R0'2Z/%Q$%%YZ M 4>*4@)V4&+(.!5S&H)[S*)0(G0Q?_"%>Z8/_G1G]K9^O#+FJGJ09332&J3^ M&"V^?8[CU6O(;Z/OY],WDT7.5JQV))5:*>\("I2!H P8;ANY +EIKYCF(7:K M9]L7;+O)JG/B%@+ +C@5U$;MP_/-7]%?+T8_@+\T\G%&UO8W)&)(4A;)(++] M97EX$H@.J'?>B,"$[#:1?LL'&L)&26U."XNVLAUZS,*: \$42X9#X"183C)I MC R+#D2B;/3:&,4[/0)YQMQL_GJ=P^U8R"DD]=;,"EWS$"W!@4IP'24''K@- MR!C!4<34*X%5I-'V,BMT#W 4OX.K:E;ZB+8U>+ U#UY;ABG52!&=3:,#H8!H M4(J.\"0#3H3U@@?; Q[%NWE4A4.1KQWAP?> 1_&'Z57AT4>T#:0>>Q<5O+\=#ZK 1&(+<256$C8$-R!" M0@*2PCH)]E(1W$Q?E%NJ*U?X-W$W=&3=GS+:5Y?#[R;SQ>QZJ96/BV]Q=O[- M3M;%-1^FDQ_+^IK[@QY +\$89Y''N:^$,@3,@-0H*!6#U%I;U\PLFUX<-GX5 M4!B_I;;/\&#Z>VRU=XGG8NO?"DYP^D0%135R^;@K(*95 D4Y@H?+HE&;JE/?D MK?$+R+_#7CP ;"_Z2%R5=M_*)0AO.(.@5G G$=',ZL1U$'B9W#-'!\ M,KNQ3Z387@_GE[07#X%;Y0[.=X\?.W1WZ>LR=)BQZ?,%?(H^/P &D3GGD+'< M(R8\3LEBI1\/Q]O5R:0J+R<:+AZ6&VU$]GOAZ$5'AKVA5_\A<7[0@\S,$_+[C@L!!$+XN8+>*,!F02QY,>GY<:UP#6-N9?32';S7V<)3N;QR*UD.]%2J9GL_G(:IIULH!:KP!@*7 C$:?1( M4V>1P-$:3JGTG!=VE%IM)ZN\-D$RB40@N7V94+>18J]M\Z8XA'CBVPG MNP^FAFLGNX\Z&PB;WDW GL0OH+0E<^_S/\C\YAY$- 62C!?@OB8% K42V9A3 MP8S0(#TQ"I>NY=M!SDMI-;L70*;#:*M=X*U[!GC//4M>(Y]D;H=O(S)"$]C+ M4B1#"0NL=$/.G035!5\QM7>#4P\=- "H5U-PDM,7.XXW?1F3B1ZH-$CK?)6% M@T#&"H= 8HP3+F70I>LSGA#1)'#Z*'A:4MH-P.4S: ((^ :!UNOX(XZGW[.$ MUI[PFB4B(692N0]-( 9QA7,?&J(1UD((3Y,+Q?M8=R"K[JW[<) JK9$&0/8E MCL=Y--,D_&9G_XX+^/U#?CB<_T);AXPF"9P!G)#);[S CR6"28<=+?YOHKIH %N_QDF>Y;:/'8)5U#HJD M"BAQ)Q1F'G@N_3JN$V%U,X?#H:R\5AJ 6H%$*_9,8PAP$#$>(VXD04XFC9(! M00O.N2*E$SY'ZF!U KVI#PDYCZS[!M!^-E[^3 R;65_OY OC*#6,6T2PS??C M\#OC#$$\Q-PR@1&72M_U=J/L1.NS>^+E\3">\LKK#:F;=R3K$U)GB;W M_1I\;/B!L\M97!F/(]V/=*+AR/$\:<9^WM,(2$8Z9 M5)PP;/%S6.OVJ::N)/91Z\/KY:(2K=R9?3,S9]>+;]/9Z']B.+N:7D\6Y$(* M):5V!A'I(0"C$'M9C@D*1G(,7C@3IE,P_$RK]H[DU!PG7U;[TV%54;L#\Q:> M0AAE94$L]H0[ZX6A$.(AFG+[\3S:P*H@48A>2.VI3Y0<8(UV?+KF=/1!0'4$ M#;19I;)*(9S;O^(A_M.&50IX0,_15LB'N?W,Z]'+%+)&^"2 M2@@CDD>)6T53MI6V=%_N+:2T<,]T.!(V7U >)O<&,@IO4HIY9'>\Y>>DW:EK MX>:I/,@&TDX#N/LZF44_O9SDDQ?86N^>^45P5"2I-6)PWB..I4+&.XT"<2R! MXQ=B*IV,W4)*"Y=-Y1%50N[MPN?\FUW\,;T>AW=7WT%2M]MGO7$N>+3.FCP$ MDT'DR[-=UCF ((SB%'6B^/'DDZ'0]0RE+=Q!'0U\);76ID?^)5[FM)V=A%]C M#D"^?QOYLUFT[R;+0:YY\0]VMKJ..R3EV>,S);*:AW)7R.E?TP'1WG26[]!O M,:M]3-AHF?M#,\0%H[6,K,97O>4K@X+'M*B/X!H[.&T96 MXLF7L'><,*MC8@QI'?"J3DX+3Y'2T0AJEI/Q!H+04VHJWW /B:$#17^R9]SG M^"-.KB/\R*?9%/;1\OHKWTLLR^D^Q(7[^?#?#GL6]B;G.&=F&6D-?;9&$CAA MAB!M,,2= D).S0@XA00[9U+BEA7O<3[0V7I7U;(6_?PMV(4W(,#9Q(Y?7<\7 MX!7/YF>3\'XZN7P/WDPXF\\C.+#+4A9"-+6:1Q2)!L\X@B2,52IG?AB-"MSE M.-QKJ3X4-WI*[X.H[8^E!E=A]9O+=87@G0U8SV?'3N+D(_@C%@)X;GQ"#H(R M)$FR*M @5>ST0.79N\HM!+3R&FIX!$Q+JZ,VIE9;\CX+Z[I32R&V]S*/V6%^ M-2A5,QZ0CSZ ?V*#P*0$IK814&_.?2'%3DM+N2)4?+XHG?V\^/KEPF)!G#0* M"2+ ;67. <64@G.<&_&(:)*U.W QC_Y_7TY__)_UBBMHK/]PAXR[[U6$01FE M30^28 O1XW3R]>99E<)"/>ASN7, M<(9@3PG6KFM:-H9Y&'S>0-=A*YRC"44L*$A!8>2\$"@H&8'#*#U^Y'UN*6#: M_HTZER/EE5]2E T<#7OZV^]OB^JYQS9@K(!/FZ^NG4'6_SW!US6]/Y6@9N8,GR6>GME9Q,P2/.;;]TF MQ65*+JKD4 !@(O#^.-*:8A C-X:+W%RG=#>&;;0<;+)N!/I^.I^?_0!99N_D M?/IJ>G4UG=Q_(K?4Q*T($N.$"H<1X88AV(X0*ED3D30.VV-7=CQ>]]L_FX0_9R\!%9!QB1(:4VRI1]& M'4!NW<=3#>.Y@'9/!7)1!#VW@0< M%%5\@"[*AQ%=]U%6PZ NIND&H+W%P5K+](F?=4$%C8;FML(B9XU%S'$'M[ED ME3N&O9+1',=)WD9BW1%83;G)1;38'Z13V$5E7NT_BH(_1S^=^-%XM%+K[5O- MQ+WP*2 B+0868S! M5)NH+%8RJ5CZ47Y9#MHZ8GLA;OL;P:.KN('3^$">?_FY>8'EBRC#I)$ZPA&E M\A$%QQ-R,3<1\@%K3XG5NK0=&)"=5MXQ'A^ECQN7-P*99G?/!WL5U^\ E&+8 M67#&4W01Y!P9,M&2W+// S5A D6D;>P83@1"EEB MP0]V4FH>4C0^MA6BO&_M[>&IQR/]P'#ZFV UX. B8AJDUA)12SGB$G1@G,!( M,VR,--Q94?J!6!'"6W0=A\9<6>#W $#]I/^#]A#1A]7RJPF"HRM@[ZY'\?-I M_8T])_*B*Q#[<(?=S5_8,Y_?F_@#,_;PJ8O55ZZ6G[@[0_J*8_N*/8W:_05_ MFWP?Y47/@>U?X"__783,IZM6L2#/ZN)FEW>22,5CZ %][6W]GLJB$47]Q_3/._K*6L M2U>IW^REN-VRJ:S VS-U= 7.\G26?>7? M[?C@[;9KW2ZJDU55UT$J+6R\^2MPD^/Y]);<915QN=WWS/I=]*CJ;\%N4FI6 MGP.IL9/V=*/::T1I[R9A]&,4KM'Q'U\V] MQD&;:-."U32T1>;3;@)H(6.[W/_PP\]LFEY)U0=KUPV6.^VBG4)I0%EW3XVS M#Q0G\[7\[MX;__+SZ7/DS,P=1Y.0;]KNU=Z4U?D@)-;-JV\$P^.*S0$UTP#P MME?+_"VJ<@;5;M@'S.;QGG7\X^?QD$%L]_K^[%\Q'A MT5GTM0MJ/L79O&:ON7*\ MP7HD'--6=!)Y'52LZL"^?/KTH-ZMBR%X\H^J]@XXVG;?)JLZZML:5D&HFQDI MGR:[6;B+MDUI;1^>*'LDE]I)F4SBUTF8C7]>WGNP<+4X7&\;5^WDO./Z6MLE MDA94]N:OF?\$%KW _KI;JI-R&J@Y><)\"QKY-3?'>FT7\:T=S7ZWX^L"JMFP M9B<=-5!ILET6; MV?)&>* BRZ>K%RFP?(;H L65N4?'CSC[^3$]^=83,/3"?:?.;P MZ]>-"U:[.=I'/_!O- MRU2O;EVT6KG_@;[W5O%4UMZ7Q;\_S?S'V?E\]F:^&%W95?% N7=0G3Y0[2U M7ZWN([;*&K[7$+J@*=V^:K7' 7UU^:R VCD /TP7_XJW)W4L]5"GRP>JO14H M<%@^*[;*&GX+BTXG\8;3$A>B6Y:L]F:@KQ9WBZ8MO;V^SE,C_LI7^A'XG*3I MS"]=ZT.-[3[?J7;974C#7838H-I_'TW'ZP85_S&]BJ]R3XK9S_?VSR%TO_-C M]2[.2R*@BSP;A %PG#M=C]+(KZD_MW_]$BR]0H( M"@1A;?IZ&P@L'$<_7K:3$IO*=3TOHX9N!:9Q#G'AY_C?UZ/9K5TI8Y3W^$PG M)3>5^MI?AJU6 7WZ,50%T,.5BU3_[""V0.7/)_OS]_F]YR&E"W^ZK'_ O@;A M'%[K<[M(M0O7/;1P?T<^YK[VA=!?T2^;.;X",W$YG?T\N'1D\XKUU/18WM.. MS-=.)(_'C\D;;7Y'LW\1R?:%ZU5?[53%=#^Y5%;=IS@MH*>[56K6E#POZ^D. MQNL7^0!)'XJHX_%:];I=[*F4+4+XIU;QF"?-/_6)_]0G[J>;\%_+ =7?#]X> M#U>J5D:U:W=L9+:V L;C6[+*;(W'R]4[UC>*>]J%]]I*N;Q<+%\M3>:3WRUL MWB_75U>KO-5\,3EWX[?3V=GWL1O_:U9"9WM_K::GMDUCTP+B:T#MF69@NJMHV$VVG/2GW8312-:^C2;%5?4XS7K M[:<>NMHBD-I9NO]>_#S[^IW,W@X1M**<@=V1?;Y3+X^W M0TV;M'DR/L@#QO*\HTOPH#Y_GRW"4Q9*[]!NGZOW2'-/G>\MPTN/J9;)GZ=33+AKW[,PK]F^2X]3"[/)N'KY,=\$0H H/='V]CZ^^EW6D[8 ME;&2PZMWDS7]CRE]S \X&_^:E3C/^W^U#:/1&RT'B[LR7'X'!B]?+S;B'?B MO[Z%?0&8[/^U:DYA&7CT%F\[5N1L_C&MV?B8E@B^9:,P.GI_M-HSS^(VI)>P M:YM<5AY9>M M/3MY-?T2QS&W\EYCZ. 7)YM7K'?_WT]?.^52N[P,2 FWM5@?4QIY6/?MI,Q> M>W[U>B:PGRX[RZNVS8QQ]NML>OW]W7Q^75"CN]:MYOOVM://RZBV1?V66_2' M6T)+:7'7NM4\SK[6]7D95=^+T_/IPHY+/-][O%:U+BF]]]Q&6=37T)E?7-OQ M^.IG/B*'.U'-+Y>I2 F CDI[K[B;)VV/C(S/P^7QXBR]%LWZ9CD/+G1:E(4S>G_ M0UR\F_CI5:$<>J%.YHQYBK*SY#>8G M<[Y.?I51>M=O=-)W2]FG/877W";_N/@69P/O[\W?Z*3JEA)7>PJO]JZV[GIL M9^]'\T7!J^[MJW929TOIK&<%5%N!3RW+H9F0+4MVJE9H*9FU6S35,_\WQK^\ M I];NY,F6TIE=116197>C#R_==S?3^>[ZK62G;LE$>M_N-;D>#&_^2]W*MV\ M=BZM[.(\_[T.VW<<%.ZFHI ;5+++4[U&:'*G-42&&;UNNDKY82 M1CN$TD**O\A4L_L+=5)02UF>36*H[H1,#RZ5O%FCDSY:RL$\8KZ-,N^#U;%O MO2IM*4W28)GJ=/(K."YKPE['N9^-EMI4GU^^DQ);2H!T%UGUOGYU;OI-F6OO\J5"FQ>LY/J6DJ#/".<5J<=PJA]4W!+VL%O21\M54TW.Z6]42L-O2X]&X\WV)(R[7*W+]R KG9T MSGU6(!5U]M_CG_.+C[/1Y0@=J) MY][:&!^LB _QSSUU\/!?U&Q4NY_X-W):1_*K\_#%#1_H>HS\,XC@GT$$^UFI M_XPIS>+/3__[/^SDWWO8JDW_KN:!L5W TV[<5CPI_G,Z_6WT_T97^XC_X3^I M>59TE/Q&'BL*_9?9M8^?IO/XVD4)(_A@N6J-9/H8PDV":,@8GL^N M)HNRMO#>DM5:R/0WA4\%TI8E+*2P[:M6ZQYSD!UL3FTW ['>55V3YOIO/#=+$FM4R^O_M7&DG_'ZCG'?(;WJ*O_R+_XNP\ M_M__]?\!4$L#!!0 ( *B(95EAN@LI,@@ ,8M 7 <6QY#,Q,2YH=&WM6FM3XS@6_;Z_0@NUW5"5A#QY!)HJADXOJ=F%&0@[ M^VU+L66LQ;8\DIR0_?5SKN200$(3FIWN--53-32VKJ2K>X_./1(^BFV:'!_% M@H?'?SGZ:[7*/JJ@2$5F6: %MR)DA9'9#?LM%.:65:NEU:G*)UK>Q)8UZ\TV M^TWI6SGBOMU*FXCCZ3A'._[Y:,=-3X*)0C)L,/&W*_V>GLBB8_V ]V MVR)H\LY>2S0/HF:]U6I%(OQ/8P-=8>[[&#M)Q(>-5&;56-#\W78GMX=C&=JX MVZC7_[;QT([K&YA:E7<;3=A9<6>K/)$W6==Y#^M(919>:V:(L70D\,5QY^.$:A$Z>YFW?UW2"W5B*&0-C?R?P HQB7L<^]7O89Q$9F(:C4:30M"[B^506M9JU!H/ES6W MH#E? ^1)Z&_D[&GO75]5TY#T/P8S41D>TV]Y:NU+^268A\ M=JMD](W6WJA-U_7U9W\8J<9!K4-AZ+.8CP338B3%&,7&QM*PWPNN ?QD@O>Y MTI:IC'U2.F6->O57IB+V:\&3B:FP?A;4D*Z#-YJNYMJEZR=ND"2D(YVPVTR- M$Q'>B(K/6IFK4,&%3$$_8 8N,\:S"2LRJPN!%4!1.'&!)'*6XDE+GK (-94I MS52*HF65MULPR$0@C$'9)9.4WPK,.S>FP;L0SF#*Q"D3S$$&@=10(C#+T!V> MA$*S<2R#F)F"?LSZCX46Y2"T@%2:!)*%U,]8VA@+-+D(G(,T;@[75(AECM M M9,/)?!C>,"I;WP\J!8MDAKP3A&9YK@"2,$>SGFN7602*X59B')D%21%B3&!I M+JD5X% 2+>6 J&8T)TD,YB6"#&/IL9.""4-7"&+(H$!L*D (#>=\K,SASTR=6?#V#4.PO780'#S(U[O-_69C[]"4 M("O5!1&)BB*)1Y?)/N-:.,P W*8",HM$P#J,)$F)G,R2T&B1*3T'$H3),H4 MZ$?TJE7BP9-K%8@0KPW; E9" ?!Y0/3N@IAG-X*=@+DNBP063I9VML2VZ^HD M*3WY1TF2,_.@I?$9T=L5)XH>3!1A(EKG8X3#@J3 *]37;FL%U#;V MOQEJ(?O7!;:[M8,&Q>&C,(@4$NA*X?/HJE"5#GAA5N]"Y7(H@)1R)E^ 5:$Q M "AL)(TC1EB)S(U#&GQ&J?.TK$7"'?3*"CR#3Z6D;&J4H%?X8E0B0W>!88JA MD:'D6M("I-<)KE!D-%)AJ':[G6IRG!,S M#8 >7E',"R'\-A1D"()&?Q&^@I#7'MK#-8)VJ[T([95I;0'AJQ/BRD#'YAC) MD/#+C* K#-4)AR:P^P8M H9-^ M*0)=RU(TOH!/20BH("@TP6&NZBX9-57&XCW=F&(L$V"@\A:);3W1)0*NP72/ MK$O'<1H3[I*"[B^RXMZO;>]5S,V]1"&.=/M A*YXN'B4Q#YAB;P527EC\_]LP<\=[D93O=+949BQ*GSF)WQ&:'N!6IE00K#*0XA M;)4V]]+ OA'NRN..O[]8PG4\1$7<*OX$BFSD4I&@NID MQF_*6W]=$J9(\T1-!%K'L?(LR1^ &>!;(B+>OZ VUI[^$^L<)ARK'UEW!BM; MAP"CT%4$.>&Y$=WI+X?@\3SADZ[,7*A?:90JWN/U6P&O^'TYG+YIIKVK'A8ENGMK][\&1KO=;XPK9.9^^+>G[.UW:] MUMQM_?^'/:CM-U9;YXX+KP\QLFARGGW8:&U,.Y3X[C;S.]9X2 0$^<>)]#G\ M^DS@D/(1F^MA>2T7_YEUU9FK$ZN8OC0$;D=]BSB<8[NG0Z'?;39VZX>=BOO\ MZ-&7.R^,S!M"R4^3'QC9.'ZWV<8IROUD5]?_['T\KSGX:]*L@[3M\O.3W, M?W><*^,^[.CZ/TV.Q)-?(I<'A/JL"Q^"R@N[V.69;Y++G_X[ZAWW_?8?4$L# M!!0 ( *B(95D#3^JT+0@ +\M 7 <6QY#,Q M,BYH=&WM6FU3V[@6_GY_A2[,;6$F"7%(@"2T,RP-V^QN89>FL_?;'=F6B2ZV MY97LA-Q??Y\C.20AH0UE6P+3SC3$UI%T7AZ=\TC1\3!/XK?'0\'#M_\X_F>U MRMZIH$A$FK- "YZ+D!5&IE?LSU"8:U:MEE*G*IMH>37,6:/>:+(_E;Z6(^[: M7L 7"YN\BJ/Y57:L=I#.E)I#JTT9G%?W61+4U:-"*KHKGF0=TR1 M8.A)=\WQIV,$*E:ZLUVW_[K44HUX(N-)Y_5 )L*PN*X:G!G%I& M3M#(_PE8B$GLX]A9?XAQ8IF*J3>\!KF@=S.4OLS9OE=K+)HU9]";M\ZK7W.&[[.*R?-,*RS?W6I/Q,,2"J\8BPD0U0M7TE7:3 MU^X@[4F-1KP&[WOL8^_TTV5_T.]]9+U_G[X_.?^YQTY.!Q1.K[W?O-?:SRR@ M_Q8FE]'DF]O57&E7O\)^48I]D.Q7F518(#0IP_(ASU]MMXZZ:UNT$,_&X4H; MW2N9AHADITI"3V2U5YO:]?UG7_24UZZUR U]-N0CP;0823%&-'ZB1L$">%( M)NPZ5>-8A%>BXJ)6QBI44"%5(!B8@:=&]/@70AE,&5LJ0OF((% :E 5 MB*7H#DU"H=EX*(,A,P5]S/J/A1;E(&1 (DT,3D/T:"SS(0PTF0BL@C1N!M54 M"#-'Z!8R?S+OAA>,ROWG@TK!(IDB[@2A69PK@"3$T:SGVF4:(<7P7&(0VF"6)D" M_2BQ:A4[V&1:!2+$:\-V@))0 '8."KV;8,C3*\%.D+,NBQ@2EK&V=L2N[6K9 M*CVY1TDT,W5PI?$9);8Y%#M4D2YK3Q0M3!1A(K+S+K8A023@$;SK8'\-O'I' M3X97[ @V!; 'M;9'?G@G##R% -HB^&5T5:@^![PPZW>A0ND+(*656@, M@.0UDL:F1$B)U(Y#['N63.<3LA8QM] K:^\,/I4R65.C1&*%+D;%,K1G&Z;P MC0PEUY(,D(XAV!*1TDB%H:IM5ZJQ)=XF4&4$%,J1L*E3!BHJ@R+FE/=AEE5B M5OW1PW&)>0J$;[X@0:1F]!?A(U+QQD/;WR!H[S>7H;UV6EM"^/H)<6V@8W&, M9$CXY4:EG#(_-\ ^<5,"-=?A%&" O.2^C&4^(4*P:EI:;A:+%F9NI2R(SG%; M6V!N2H.R0F> N;$$)@B4#JT"EN5>B12\) ;:T2(R6D8D @;O$(WE)C/D^)>, MZ6"#,.W2=6_$X\+F- JXB"+03#E"J,P*NOAJ^ZCA'7;-.CG:/:YFD!;"Z(C\ M:AQ/]561WZ_!.E6$WTH+(N'1E[=2S)_2>[LJA?,$]+$(I E>* K##4)AF5E= M@)>!0GO\D@3:EI5H?$ ^)2*@@J#0!(>YJKMBU$29'._IE!1CF0 #E>=';.>> M+A%PC4QW1[I4'/LP88\GZ.0B+6[UVG5:#;FYI2B4(^TZ$*$M'M8?96*?L%A> MB[@\J[@C7WFTBQZ)_4W?X+6>_0;/'FN&T_52F24QRJGSF)WE,T+= ]C*$A6& M4AQ$.%?:W%(#^P*#)8G,X"Q^V/O]CW)P$D,:@=?20".=M"T%P^D $+*@GZ[AQH+?DT5 MVE$]6Z,M2;6'K=/SIP?AKMSNN/.+%;F.A^AHQ&VJ6X'1DM1"&' #]ZPX@F# M#MP/KW"/-:,L+BO/Z%YZ\=^\;=4):GRDD5 JP("PV0\HL@?E)=PJKD3*=*3B MD: ZF?*K\KQ?EPE3)%FL)@*MXZ%R69(O@!G@6T$B7C^@-M;6@81-ZL>YW8*5 MK3ZP*'05/HYY9D1G^J6+-)[%?-*1J?64[32]&^"K/%<)#=<=42T HR@A9:'D MFF<7&&IU=XDAU_@?3F>O9N6?=ZUR,*)J,IV^V]K?N_ ;?:60WS%O, X3XNX%T,?S^ MB< BY1W6UF)U+8W_C%UU9LO$.J(/=8%=44_AAW.L]L07^M6V=U#OMBKV8M*= M.ST/],P+0LE/DPW"R%,XX-5V$_LG^\E^N;A@'_KLU_Z'K_7'FLAX@ _7$"W+ MC^4K&1Q(I]B,/-=]3H&8W:IY5LY_3BX^'4H1L;-;XG/A-IX__/V-_+U3'GK3 M/91;I]/^9.Y<_2]Q6;@_D+QYDR]L)&Q_WP.!+W M7D$N^7]]UH7[2-U%OMSE"Y>1RT]W@7K/7MS^/U!+ P04 " "HB&59)+]4 MW_8$ # %P %P '%L>7,M,C R-# Y,S!X97@S,C$N:'1M[5A;4^,V%'[O MKS@-4Q9F8F,["1] MS#),)M&YZ7S?T=%E,-=YMC^8,T+W?QC\Z#AP())%S@H-B61$,PH+Q8LS>$.9 M.@?':;1&HJPD/YMK"+R@"V^$/.<7I)9KKC.VO_0SV*I_#[9LD$$L:+4_H/P" M.'W9XK3C$;\7$[^3]KHT\4F:!'[0B5F\&WMQ2O_R6VB*ZK6-TE7&7K9R7CAS M9N*'W5ZI^Y>]Y/K9MZ1)ZAJA9EZ >H5Q)*,1LG8ZD.=UPSI-F5=DC& MSXK0)H0.4E%HG*C$P/77.OZ=63B*)0Z:2Y+H4"URC%;U;X=\P/_21R(R(<,U MS_[UC<1)2L"5 ?F!0B:[F/.8:.H'KWTQK):&5N29('9.?:;*C:#(;'XY'P]GXY!A. M#F%T-(X.(?HS&IW.QG]$.(32:/+%)_+J=#(]'1[/8'8"D]/?(O [Q/&[&_$F MG$R:D1ZM1[[X9)"'V5$$4R1A,IZ-HRD2,CH:'O\2P7 T,S3Y>YTN#(\/P-^% M4W?JCERC;4GT.SWOP0S?LV;^7BC-T^J3I]R]-^5Q 8DH"I9H+@JXY'H.>L[@ M]8)(Y"&K8,)*(36(U(QEE6K#N$A#U1R(O25'97WY_$]#1H9 Y M^)[S&E(AK<>WM4=@!<66.V6E9GG,Y/J:O^WU.U[;MMDV$ 4ISU#C>BI3EBPD MUQQS)@6%Z"J9D^*,88/.M[WT/B4R)@53SLE5QBH8)A;^ MP/."-LJ);ALSHQ@S945Y!>>%N$38SMCZ6F^W_^@ZO+%=V(WF;F760[PPX(2. MOUM^^@Y_?ZUN^-DBP^628&5DIE:OZU>RMPLN MF3DI*$/6M%EK?F>#X%J1V!\WZ.8U]^^J_;K2FP(PO0?9W>N;"OU&&0Z^2(9Y M@5TL)Y8V[)::H"7%4 MD"(QX^B0]6&@M\M"4SH5I=PG)FO*Q95.+WQU07:\^I&H\ M76JZC-R(72O:TO2N;-OU O]!J>=^K*SK;7^4Y?OFVO7<8+OS_[O=I3J4R&P2^ISX' L+E:.1+WZ1'3K@O9$9+ZA*OFY^EXCK?WUM>Y. M7]E/F)[^'AT192N4)H#Y"M=F/[&&E1#!%QBD8%/M?'3.W;Q1? M(1M?4SMXU'7M8YO%=_0_@/Y&*3F>7DL\OK)KT$4-^N9WU#\1ZJL/,/\)Y"U[ MOK_G^K#ZXEP*9:\EH609,00_^ ;=7!"\=R8DQE:^T'=-/O#TW'S6+^A;]N7^ M7U!+ P04 " "HB&59(U@[J_0$ "@%P %P '%L>7,M,C R-# Y,S!X M97@S,C(N:'1M[5AM4]LX$/Y^OV(OS%&8B8WMO !.RDPN#=?T);DF87K?;F1; M)KK:EBO)@._7WTIV($#A*'<4Z)1A/+'V1=KG6:W6ZB]5FASTEY1$!S_U?[8L M>,7#(J69@E!0HF@$A639,7R,J/P$EE5K#7E>"G:\5. Y7AL^N_OF$GZ 8_*@W[$3H!%+QMLW]VE[8X;N=U6V-Z-H_T@#O 1=8.. MUVT'Y$^W@::H7ME(52;T92-EF;6D>GZ_W$<>HJGCN MNQ[J*7JF+)*PX\PWJT?MF&<*5R5PENIG-=FU*2U)0PO-!0F5+XL479>]._I? M^0AYPH6_X9B_GI98,4E94OHO%BRE$B;T%&8\)=F+IB29Q#D%BRM%R?ZF&"%. M8EY/J^AWT4_",KI"P_4T!*.S)0N8@I9G>Y?#6@MH;:TA\D3%(RUV.)HMQH?C MX6 QGDY@>@C#U^/1(1R.)X/)<#QXAT,H'J03U2-//AID8O%Z!//1\&@V7HQ'@;L'1_;<'MI:V]#HMCK.C1'>LFO^*J1B_&/(X@Y!G&0T5 MXQF<,K4$M:3PH2 ">4A*F-&<"P4\UF-)*9LPSD(;MK36YL:>YSF](4]SDI7F MS>UM SHZY"(%U[$^0,R%\?BY\@@TB[#"SFFN:!I0L;GA=IU>RVF:JMH$(B%F M"6J<+V5.PT(PQ3!FDD4P.@N7)#NF6(_3E$FIEXW_6C/"X@U+*B@N=GU]50BK MY6$ 37C#.;QG\):E31@N&8WAD&4D"QE)8!K'+,25HA?MI(ZN"3BFB6I"7@A9 M$.1*\;4\T)'L]DP:F#!(Q'-]F*QKUSK[3G?E?4Y$0#(JK>E90DL8A 9JSW&\ M)LJ):FHSK1A0:41I"9\R?HH0'=/-C[\XYEY,HPG/-2FAU66^.P0!;JW1 7"6Z-$#,CT7EYGJN" M?BZ8H+H)D)JL>;VOW-86P7TAL!AN1=OGW%]D]GE6UPF@ZPRRN]_3.?^=,NP] M2899AA4K)88VK(R*H&6$HX:Q%?V$Z=*8"RHUTTTM)DD":(:+P1*"@ARIETUC M%9^7%G08,>-:ES+4*I(J47A.A9E37BD[]EW(]YRKY._:Z_D@JC-/CR'9B@0) M77D)N(BHL!#UA.22^JL?O8C)/"&ESS*#G3%:-7\!5XJGODZP$UT40Y+426:2 MJQ)?=*BV4W6I"CM.%:UFKL6V$>VHZ+JL:SN>>Z/4L>\K:SO=>UG>MM:V8WO= MUO_O=M_>![^1FXERN#SIBK1%8ZCRV=;'?PM<3DZJL:=5+\6 K/S'@.'"3]9:Y(Z58]TY:/M*Y'YCK+D MU_()YH+]I7W;22,.1%IO0%*:\X MV/Y!P@.1L'[C\I] WC'M^Q<^(M9OE',NS;>)+VB"WR(G],8[YKK_=RY,2("E MNU#73?[EMKE^5C?D.^9F_A]02P$"% ,4 " "HB&59/IV]$EW1 0#@YAD M$0 @ $ <6QY&UL4$L! A0#% @ J(AE M6=CV@U "0 RO@" !4 ( !4P," '%L>7,M,C R-# Y,S!? M9&5F+GAM;%!+ 0(4 Q0 ( *B(95D56P<)UOD +7\"0 5 M " 8A# @!Q;'ES+3(P,C0P.3,P7VQA8BYX;6Q02P$"% ,4 " "HB&59 M[1'I!)*, !8RP8 %0 @ &1/0, <6QY&UL4$L! A0#% @ J(AE66&Z"RDR" QBT !< M ( !5LH# '%L>7,M,C R-# Y,S!X97@S,3$N:'1M4$L! A0#% @ J(AE M60-/ZK0M" ORT !< ( !O=(# '%L>7,M,C R-# Y,S!X M97@S,3(N:'1M4$L! A0#% @ J(AE622_5-_V! P!< !< M ( !']L# '%L>7,M,C R-# Y,S!X97@S,C$N:'1M4$L! A0#% @ MJ(AE62-8.ZOT! H!< !< ( !2N # '%L>7,M,C R-# Y B,S!X97@S,C(N:'1M4$L%!@ * H G@( '/E P $! end XML 84 qlys-20240930_htm.xml IDEA: XBRL DOCUMENT 0001107843 2024-01-01 2024-09-30 0001107843 2024-10-24 0001107843 2024-09-30 0001107843 2023-12-31 0001107843 2024-07-01 2024-09-30 0001107843 2023-07-01 2023-09-30 0001107843 2023-01-01 2023-09-30 0001107843 2022-12-31 0001107843 2023-09-30 0001107843 us-gaap:CommonStockMember 2023-12-31 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0001107843 us-gaap:RetainedEarningsMember 2023-12-31 0001107843 us-gaap:RetainedEarningsMember 2024-01-01 2024-03-31 0001107843 2024-01-01 2024-03-31 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-03-31 0001107843 us-gaap:CommonStockMember 2024-01-01 2024-03-31 0001107843 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-03-31 0001107843 us-gaap:CommonStockMember 2024-03-31 0001107843 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0001107843 us-gaap:RetainedEarningsMember 2024-03-31 0001107843 2024-03-31 0001107843 us-gaap:RetainedEarningsMember 2024-04-01 2024-06-30 0001107843 2024-04-01 2024-06-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-04-01 2024-06-30 0001107843 us-gaap:CommonStockMember 2024-04-01 2024-06-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2024-04-01 2024-06-30 0001107843 us-gaap:CommonStockMember 2024-06-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2024-06-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-30 0001107843 us-gaap:RetainedEarningsMember 2024-06-30 0001107843 2024-06-30 0001107843 us-gaap:RetainedEarningsMember 2024-07-01 2024-09-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-07-01 2024-09-30 0001107843 us-gaap:CommonStockMember 2024-07-01 2024-09-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2024-07-01 2024-09-30 0001107843 us-gaap:CommonStockMember 2024-09-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2024-09-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-09-30 0001107843 us-gaap:RetainedEarningsMember 2024-09-30 0001107843 us-gaap:CommonStockMember 2022-12-31 0001107843 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001107843 us-gaap:RetainedEarningsMember 2022-12-31 0001107843 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0001107843 2023-01-01 2023-03-31 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0001107843 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0001107843 us-gaap:CommonStockMember 2023-03-31 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001107843 us-gaap:RetainedEarningsMember 2023-03-31 0001107843 2023-03-31 0001107843 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0001107843 2023-04-01 2023-06-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0001107843 us-gaap:CommonStockMember 2023-04-01 2023-06-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0001107843 us-gaap:CommonStockMember 2023-06-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0001107843 us-gaap:RetainedEarningsMember 2023-06-30 0001107843 2023-06-30 0001107843 us-gaap:RetainedEarningsMember 2023-07-01 2023-09-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-01 2023-09-30 0001107843 us-gaap:CommonStockMember 2023-07-01 2023-09-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-07-01 2023-09-30 0001107843 us-gaap:CommonStockMember 2023-09-30 0001107843 us-gaap:AdditionalPaidInCapitalMember 2023-09-30 0001107843 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-09-30 0001107843 us-gaap:RetainedEarningsMember 2023-09-30 0001107843 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2024-09-30 0001107843 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2024-09-30 0001107843 us-gaap:FairValueMeasurementsRecurringMember 2024-09-30 0001107843 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2023-12-31 0001107843 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2023-12-31 0001107843 us-gaap:FairValueMeasurementsRecurringMember 2023-12-31 0001107843 us-gaap:MoneyMarketFundsMember us-gaap:CashEquivalentsMember 2024-09-30 0001107843 us-gaap:CommercialPaperMember us-gaap:CashEquivalentsMember 2024-09-30 0001107843 us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember us-gaap:CashEquivalentsMember 2024-09-30 0001107843 us-gaap:CashEquivalentsMember 2024-09-30 0001107843 us-gaap:ShortTermInvestmentsMember us-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember 2024-09-30 0001107843 us-gaap:ShortTermInvestmentsMember us-gaap:CorporateDebtSecuritiesMember 2024-09-30 0001107843 us-gaap:ShortTermInvestmentsMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2024-09-30 0001107843 us-gaap:ShortTermInvestmentsMember 2024-09-30 0001107843 us-gaap:OtherLongTermInvestmentsMember us-gaap:CorporateDebtSecuritiesMember 2024-09-30 0001107843 us-gaap:OtherLongTermInvestmentsMember us-gaap:AssetBackedSecuritiesMember 2024-09-30 0001107843 us-gaap:OtherLongTermInvestmentsMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2024-09-30 0001107843 us-gaap:OtherLongTermInvestmentsMember 2024-09-30 0001107843 us-gaap:MoneyMarketFundsMember us-gaap:CashEquivalentsMember 2023-12-31 0001107843 us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember us-gaap:CashEquivalentsMember 2023-12-31 0001107843 us-gaap:CashEquivalentsMember 2023-12-31 0001107843 us-gaap:ShortTermInvestmentsMember us-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember 2023-12-31 0001107843 us-gaap:ShortTermInvestmentsMember us-gaap:CorporateDebtSecuritiesMember 2023-12-31 0001107843 us-gaap:ShortTermInvestmentsMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2023-12-31 0001107843 us-gaap:ShortTermInvestmentsMember 2023-12-31 0001107843 us-gaap:OtherLongTermInvestmentsMember us-gaap:CorporateDebtSecuritiesMember 2023-12-31 0001107843 us-gaap:OtherLongTermInvestmentsMember us-gaap:AssetBackedSecuritiesMember 2023-12-31 0001107843 us-gaap:OtherLongTermInvestmentsMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2023-12-31 0001107843 us-gaap:OtherLongTermInvestmentsMember 2023-12-31 0001107843 us-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember 2024-09-30 0001107843 us-gaap:CorporateDebtSecuritiesMember 2024-09-30 0001107843 us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2024-09-30 0001107843 us-gaap:CommercialPaperNotIncludedWithCashAndCashEquivalentsMember 2023-12-31 0001107843 us-gaap:AssetBackedSecuritiesMember 2023-12-31 0001107843 us-gaap:CorporateDebtSecuritiesMember 2023-12-31 0001107843 us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2023-12-31 0001107843 2018-12-31 0001107843 us-gaap:ForeignExchangeContractMember us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2024-09-30 0001107843 us-gaap:ForeignExchangeContractMember us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-12-31 0001107843 qlys:ForeignExchangeContractsForGBPAndEuroMember us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2024-09-30 0001107843 us-gaap:ForeignExchangeContractMember us-gaap:NondesignatedMember 2024-09-30 0001107843 us-gaap:ForeignExchangeContractMember us-gaap:NondesignatedMember 2023-12-31 0001107843 us-gaap:DesignatedAsHedgingInstrumentMember 2024-09-30 0001107843 us-gaap:DesignatedAsHedgingInstrumentMember 2023-12-31 0001107843 us-gaap:NondesignatedMember 2024-09-30 0001107843 us-gaap:NondesignatedMember 2023-12-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-12-31 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-12-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-01-01 2024-03-31 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-01-01 2024-03-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-03-31 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-03-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-04-01 2024-06-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-04-01 2024-06-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-06-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-06-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-07-01 2024-09-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-07-01 2024-09-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-09-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-09-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2022-12-31 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-12-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-01-01 2023-03-31 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-01-01 2023-03-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-03-31 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-03-31 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-04-01 2023-06-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-04-01 2023-06-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-06-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-06-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-07-01 2023-09-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-07-01 2023-09-30 0001107843 us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-09-30 0001107843 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-07-01 2024-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-07-01 2023-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2024-01-01 2024-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-01-01 2023-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-01-01 2024-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-07-01 2023-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2023-01-01 2023-09-30 0001107843 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedNetUnrealizedInvestmentGainLossMember 2024-07-01 2024-09-30 0001107843 us-gaap:ComputerEquipmentMember 2024-09-30 0001107843 us-gaap:ComputerEquipmentMember 2023-12-31 0001107843 us-gaap:ComputerSoftwareIntangibleAssetMember 2024-09-30 0001107843 us-gaap:ComputerSoftwareIntangibleAssetMember 2023-12-31 0001107843 us-gaap:LeaseholdImprovementsMember 2024-09-30 0001107843 us-gaap:LeaseholdImprovementsMember 2023-12-31 0001107843 qlys:ScannerAppliancesMember 2024-09-30 0001107843 qlys:ScannerAppliancesMember 2023-12-31 0001107843 us-gaap:FurnitureAndFixturesMember 2024-09-30 0001107843 us-gaap:FurnitureAndFixturesMember 2023-12-31 0001107843 qlys:ScannerAppliancesAndOtherComputerEquipmentSubjectToSubscriptionMember 2024-09-30 0001107843 qlys:ScannerAppliancesAndOtherComputerEquipmentSubjectToSubscriptionMember 2023-12-31 0001107843 qlys:ScannerAppliancesAndOtherComputerEquipmentNotPlacedInServiceMember 2024-09-30 0001107843 qlys:ScannerAppliancesAndOtherComputerEquipmentNotPlacedInServiceMember 2023-12-31 0001107843 2024-10-01 2024-09-30 0001107843 2025-01-01 2024-09-30 0001107843 2026-01-01 2024-09-30 0001107843 2027-01-01 2024-09-30 0001107843 2028-01-01 2024-09-30 0001107843 2029-01-01 2024-09-30 0001107843 us-gaap:SalesChannelDirectlyToConsumerMember 2024-07-01 2024-09-30 0001107843 us-gaap:SalesChannelDirectlyToConsumerMember 2023-07-01 2023-09-30 0001107843 us-gaap:SalesChannelDirectlyToConsumerMember 2024-01-01 2024-09-30 0001107843 us-gaap:SalesChannelDirectlyToConsumerMember 2023-01-01 2023-09-30 0001107843 us-gaap:SalesChannelThroughIntermediaryMember 2024-07-01 2024-09-30 0001107843 us-gaap:SalesChannelThroughIntermediaryMember 2023-07-01 2023-09-30 0001107843 us-gaap:SalesChannelThroughIntermediaryMember 2024-01-01 2024-09-30 0001107843 us-gaap:SalesChannelThroughIntermediaryMember 2023-01-01 2023-09-30 0001107843 us-gaap:DevelopedTechnologyRightsMember 2024-09-30 0001107843 us-gaap:PatentsMember 2024-09-30 0001107843 qlys:AssembledWorkforceMember 2024-09-30 0001107843 qlys:IntangibleAssetsNotSubjectToAmortizationMember 2024-09-30 0001107843 us-gaap:DevelopedTechnologyRightsMember 2023-12-31 0001107843 us-gaap:PatentsMember 2023-12-31 0001107843 qlys:AssembledWorkforceMember 2023-12-31 0001107843 qlys:IntangibleAssetsNotSubjectToAmortizationMember 2023-12-31 0001107843 qlys:The2012EquityIncentivePlanMember 2022-06-08 2022-06-08 0001107843 qlys:The2012EquityIncentivePlanMember 2024-06-12 2024-06-12 0001107843 qlys:The2021EmployeeStockPurchasePlanMember 2021-06-09 0001107843 qlys:The2021EmployeeStockPurchasePlanMember 2021-06-09 2021-06-09 0001107843 srt:MinimumMember qlys:The2021EmployeeStockPurchasePlanMember 2021-06-09 2021-06-09 0001107843 srt:MaximumMember qlys:The2021EmployeeStockPurchasePlanMember 2021-06-09 2021-06-09 0001107843 qlys:The2021EmployeeStockPurchasePlanMember 2024-01-01 2024-09-30 0001107843 qlys:The2021EmployeeStockPurchasePlanMember 2024-09-30 0001107843 qlys:The2012EquityIncentivePlanMember 2024-01-01 2024-09-30 0001107843 2023-01-01 2023-12-31 0001107843 srt:ExecutiveOfficerMember qlys:PerformanceBasedRestrictedStockUnitsMember 2024-01-01 2024-09-30 0001107843 srt:MaximumMember srt:ExecutiveOfficerMember qlys:PerformanceBasedRestrictedStockUnitsMember 2024-01-01 2024-09-30 0001107843 srt:MinimumMember srt:ExecutiveOfficerMember qlys:PerformanceBasedRestrictedStockUnitsMember 2024-01-01 2024-09-30 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2023-12-31 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2024-01-01 2024-09-30 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2024-09-30 0001107843 qlys:ExecutiveOfficer1Member qlys:PerformanceBasedRestrictedStockUnitsMember 2023-01-01 2023-12-31 0001107843 qlys:ExecutiveOfficer1Member qlys:PerformanceBasedRestrictedStockUnitsMember 2021-01-01 2021-12-31 0001107843 qlys:ExecutiveOfficer1Member qlys:PerformanceBasedRestrictedStockUnitsMember 2022-01-01 2022-12-31 0001107843 qlys:ExecutiveOfficer2Member qlys:PerformanceBasedRestrictedStockUnitsMember 2022-01-01 2022-12-31 0001107843 qlys:ExecutiveOfficer2Member qlys:PerformanceBasedRestrictedStockUnitsMember 2021-01-01 2021-12-31 0001107843 qlys:ExecutiveOfficer2Member qlys:PerformanceBasedRestrictedStockUnitsMember 2023-01-01 2023-12-31 0001107843 qlys:ExecutiveOfficer3Member qlys:PerformanceBasedRestrictedStockUnitsMember 2021-01-01 2021-12-31 0001107843 qlys:ExecutiveOfficer3Member qlys:PerformanceBasedRestrictedStockUnitsMember 2022-01-01 2022-12-31 0001107843 qlys:ExecutiveOfficer3Member qlys:PerformanceBasedRestrictedStockUnitsMember 2023-01-01 2023-12-31 0001107843 qlys:ExecutiveOfficer4Member qlys:PerformanceBasedRestrictedStockUnitsMember 2021-01-01 2021-12-31 0001107843 qlys:ExecutiveOfficer4Member qlys:PerformanceBasedRestrictedStockUnitsMember 2022-01-01 2022-12-31 0001107843 qlys:ExecutiveOfficer4Member qlys:PerformanceBasedRestrictedStockUnitsMember 2023-01-01 2023-12-31 0001107843 qlys:ExecutiveOfficer4Member qlys:PerformanceBasedRestrictedStockUnitsMember 2024-01-01 2024-09-30 0001107843 us-gaap:CostOfSalesMember 2024-07-01 2024-09-30 0001107843 us-gaap:CostOfSalesMember 2023-07-01 2023-09-30 0001107843 us-gaap:CostOfSalesMember 2024-01-01 2024-09-30 0001107843 us-gaap:CostOfSalesMember 2023-01-01 2023-09-30 0001107843 us-gaap:ResearchAndDevelopmentExpenseMember 2024-07-01 2024-09-30 0001107843 us-gaap:ResearchAndDevelopmentExpenseMember 2023-07-01 2023-09-30 0001107843 us-gaap:ResearchAndDevelopmentExpenseMember 2024-01-01 2024-09-30 0001107843 us-gaap:ResearchAndDevelopmentExpenseMember 2023-01-01 2023-09-30 0001107843 us-gaap:SellingAndMarketingExpenseMember 2024-07-01 2024-09-30 0001107843 us-gaap:SellingAndMarketingExpenseMember 2023-07-01 2023-09-30 0001107843 us-gaap:SellingAndMarketingExpenseMember 2024-01-01 2024-09-30 0001107843 us-gaap:SellingAndMarketingExpenseMember 2023-01-01 2023-09-30 0001107843 us-gaap:GeneralAndAdministrativeExpenseMember 2024-07-01 2024-09-30 0001107843 us-gaap:GeneralAndAdministrativeExpenseMember 2023-07-01 2023-09-30 0001107843 us-gaap:GeneralAndAdministrativeExpenseMember 2024-01-01 2024-09-30 0001107843 us-gaap:GeneralAndAdministrativeExpenseMember 2023-01-01 2023-09-30 0001107843 qlys:PerformanceBasedRestrictedStockUnitsMember 2024-07-01 2024-09-30 0001107843 qlys:PerformanceBasedRestrictedStockUnitsMember 2023-07-01 2023-09-30 0001107843 qlys:PerformanceBasedRestrictedStockUnitsMember 2024-01-01 2024-09-30 0001107843 qlys:PerformanceBasedRestrictedStockUnitsMember 2023-01-01 2023-09-30 0001107843 us-gaap:EmployeeStockOptionMember 2024-09-30 0001107843 qlys:PerformanceBasedRestrictedStockUnitsMember 2024-09-30 0001107843 qlys:ESPPSharesMember 2024-09-30 0001107843 us-gaap:EmployeeStockOptionMember 2024-01-01 2024-09-30 0001107843 qlys:ESPPSharesMember 2024-01-01 2024-09-30 0001107843 2018-02-12 0001107843 2018-10-30 0001107843 2019-10-30 0001107843 2020-05-07 0001107843 2021-02-10 0001107843 2021-11-03 0001107843 2022-05-04 0001107843 2023-02-09 0001107843 2024-02-07 0001107843 country:US 2024-07-01 2024-09-30 0001107843 country:US 2023-07-01 2023-09-30 0001107843 country:US 2024-01-01 2024-09-30 0001107843 country:US 2023-01-01 2023-09-30 0001107843 us-gaap:NonUsMember 2024-07-01 2024-09-30 0001107843 us-gaap:NonUsMember 2023-07-01 2023-09-30 0001107843 us-gaap:NonUsMember 2024-01-01 2024-09-30 0001107843 us-gaap:NonUsMember 2023-01-01 2023-09-30 0001107843 country:US 2024-09-30 0001107843 country:US 2023-12-31 0001107843 country:IN 2024-09-30 0001107843 country:IN 2023-12-31 0001107843 qlys:OtherGeographicAreasMember 2024-09-30 0001107843 qlys:OtherGeographicAreasMember 2023-12-31 0001107843 us-gaap:EmployeeStockOptionMember 2024-07-01 2024-09-30 0001107843 us-gaap:EmployeeStockOptionMember 2023-07-01 2023-09-30 0001107843 us-gaap:EmployeeStockOptionMember 2024-01-01 2024-09-30 0001107843 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-09-30 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2024-07-01 2024-09-30 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2023-07-01 2023-09-30 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2024-01-01 2024-09-30 0001107843 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-09-30 0001107843 qlys:EmployeeStockPurchasePlanSharesMember 2024-07-01 2024-09-30 0001107843 qlys:EmployeeStockPurchasePlanSharesMember 2023-07-01 2023-09-30 0001107843 qlys:EmployeeStockPurchasePlanSharesMember 2024-01-01 2024-09-30 0001107843 qlys:EmployeeStockPurchasePlanSharesMember 2023-01-01 2023-09-30 0001107843 qlys:JeffreyP.HankMember 2024-01-01 2024-09-30 0001107843 qlys:JeffreyP.HankMember qlys:OriginalPlanMember 2024-07-01 2024-09-30 0001107843 qlys:JeffreyP.HankMember qlys:NewPlanMember 2024-07-01 2024-09-30 0001107843 qlys:JeffreyP.HankMember 2024-07-01 2024-09-30 0001107843 qlys:JeffreyP.HankMember 2024-09-30 0001107843 qlys:JooMiKimMember 2024-01-01 2024-09-30 0001107843 qlys:JooMiKimMember 2024-07-01 2024-09-30 0001107843 qlys:JooMiKimMember 2024-09-30 0001107843 qlys:BrucePoseyMember 2024-01-01 2024-09-30 0001107843 qlys:BrucePoseyMember 2024-07-01 2024-09-30 0001107843 qlys:BrucePoseyMember 2024-09-30 shares iso4217:USD iso4217:USD shares iso4217:EUR iso4217:GBP iso4217:INR iso4217:CAD pure qlys:segment 0001107843 --12-31 2024 Q3 false P3M P1Y P1Y P1Y P1Y P3Y P318D P269D P456D P468D 10-Q true 2024-09-30 false 001-35662 QUALYS, INC. DE 77-0534145 919 E. Hillsdale Boulevard, 4th Floor Foster City CA 94404 650 801-6100 Common stock, $0.001 par value per share QLYS NASDAQ Yes Yes Large Accelerated Filer false false false 36590452 235430000 203665000 0 1500000 150913000 221893000 1154000 778000 114967000 146226000 35307000 26714000 536617000 599998000 186680000 56644000 27343000 32599000 41294000 22391000 77730000 62761000 7451000 9715000 7447000 7447000 1200000 1200000 22561000 19863000 908323000 812618000 1422000 988000 39960000 43096000 337821000 333267000 9333000 11857000 388536000 389208000 23116000 31671000 38266000 16885000 8810000 6680000 458728000 444444000 0.001 0.001 20000000 20000000 0 0 0 0 0 0 0.001 0.001 1000000000 1000000000 36640000 36640000 36909000 36909000 37000 37000 642435000 597921000 -293000 -1704000 -192584000 -228080000 449595000 368174000 908323000 812618000 153867000 141996000 448380000 409888000 28832000 26739000 82445000 80355000 125035000 115257000 365935000 329533000 28901000 27782000 83550000 83001000 32686000 27881000 94240000 79750000 18494000 15999000 50362000 45182000 80081000 71662000 228152000 207933000 44954000 43595000 137783000 121600000 6764000 5136000 19590000 11342000 605000 -708000 -1381000 -1883000 7369000 4428000 18209000 9459000 52323000 48023000 155992000 131059000 6111000 1508000 26277000 20057000 46212000 46515000 129715000 111002000 1.26 1.27 3.52 3.01 1.24 1.24 3.46 2.96 36762000 36766000 36877000 36891000 37136000 37448000 37441000 37516000 46212000 46515000 129715000 111002000 2256000 339000 1628000 1782000 -2015000 510000 -217000 -702000 241000 849000 1411000 1080000 46453000 47364000 131126000 112082000 129715000 111002000 14410000 21140000 411000 230000 0 -533000 56454000 50560000 5231000 3502000 -15374000 -11561000 -30848000 -18137000 9900000 4804000 391000 -1428000 -1351000 8211000 -4001000 22248000 196372000 210766000 305952000 252438000 252940000 212202000 6497000 7263000 -59509000 -47499000 97188000 147725000 8311000 28384000 23093000 14998000 6872000 6077000 1500000 0 -106598000 -128262000 30265000 35005000 206365000 176419000 236630000 211424000 36909000 37000 597921000 -1704000 -228080000 368174000 39731000 39731000 697000 697000 46000 2770000 2770000 105000 627000 17402000 18029000 149000 66000 11808000 11808000 29000 3608000 3608000 19059000 19059000 36962000 37000 610923000 -1007000 -205751000 404202000 43772000 43772000 473000 473000 61000 3200000 3200000 233000 1395000 33668000 35063000 91000 35000 5903000 5903000 17114000 17114000 36846000 37000 623939000 -534000 -195647000 427795000 46212000 46212000 241000 241000 54000 2341000 2341000 344000 2064000 43149000 45213000 91000 38000 5382000 5382000 31000 3264000 3264000 20337000 20337000 36640000 37000 642435000 -293000 -192584000 449595000 37362000 37000 512486000 -1947000 -221447000 289129000 29105000 29105000 376000 376000 61000 2328000 2328000 584000 7014000 60018000 67032000 108000 43000 5105000 5105000 29000 2988000 2988000 16033000 16033000 36933000 37000 521716000 -1571000 -252360000 267822000 35382000 35382000 -145000 -145000 101000 4820000 4820000 346000 4157000 38335000 42492000 96000 38000 4389000 4389000 16020000 16020000 36746000 37000 534010000 -1716000 -255313000 277018000 46515000 46515000 849000 849000 239000 21236000 21236000 273000 0 3279000 35543000 38822000 92000 39000 5504000 5504000 31000 3089000 3089000 18536000 18536000 36796000 37000 568088000 -867000 -244341000 322917000 Description of Business and Summary of Significant Accounting Policies<div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Description of Business</span></div><div style="margin-top:12pt;text-align:justify;text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Qualys, Inc. (the “Company”, "we", "us", "our") was incorporated in the state of Delaware on December 30, 1999. The Company is headquartered in Foster City, California and has wholly-owned subsidiaries throughout the world. The Company is a leading provider of cloud-based information technology ("IT"), security and compliance solutions that enable organizations to identify security risks to their IT infrastructures, help protect their IT systems and applications from ever-evolving cyber-attacks and achieve compliance with internal policies and external regulations. The Company’s cloud solutions address the growing security and compliance complexities and risks that are amplified by the dissolving boundaries between internal and external IT infrastructures and web environments, the rapid adoption of cloud computing and the proliferation of geographically dispersed IT assets. Organizations can use the Company’s integrated suite of solutions delivered on Qualys' Enterprise TruRisk Platform to cost-effectively obtain a unified view of their security and compliance posture across globally-distributed IT infrastructures.</span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements and condensed footnotes have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP") for interim financial information as well as the instructions to Form 10-Q and the rules and regulations of the U.S. Securities and Exchange Commission ("SEC"). Certain information and disclosures normally included in the financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The condensed consolidated balance sheet as of December 31, 2023, included herein, was derived from the audited financial statements as of that date but does not include all disclosures, including notes required by U.S. GAAP. In the opinion of management, the accompanying unaudited condensed consolidated financial statements reflect all adjustments, which include only normal recurring adjustments, necessary for the fair statement of the financial position, results of operations and cash flows for the interim periods. The results of operations for the three and nine months ended September 30, 2024 are not necessarily indicative of the results of operations expected for the entire year ending December 31, 2024 or for any other future annual or interim periods. These condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 filed with the SEC on February 22, 2024.</span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of the unaudited condensed consolidated financial statements in conformity with U.S. GAAP requires management to make certain estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of assets and liabilities at the date of the condensed consolidated financial statements and the reported results of operations during the reporting period. The Company’s management regularly assesses these estimates, which primarily affect revenue recognition, allowance for credit loss, the valuation of goodwill and intangible assets, leases, stock-based compensation and income tax provision. Actual results could differ from those estimates and such differences may be material to the accompanying unaudited condensed consolidated financial statements.</span></div><div style="margin-top:12pt;padding-left:13.5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None. </span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recently Issued Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2023, the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2023-07 requiring enhanced segment disclosures. The ASU requires disclosure of significant segment expenses regularly provided to the chief operating decision maker ("CODM") included within segment operating profit or loss. Additionally, the ASU requires a description of how the CODM utilizes segment operating profit or loss to assess segment performance. The requirements of the ASU are effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company's annual reporting requirements will be effective for fiscal 2024 and interim reporting requirements will be effective beginning with the first quarter of fiscal 2025. Early adoption is permitted and retrospective application is required for all periods presented. The Company is in the process of analyzing the impact of the ASU on related disclosures.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09 requiring improvements to income tax disclosures. The new ASU requires disclosure of disaggregated information about the effective tax rate and income taxes paid. The requirements of the ASU are effective for annual periods beginning after December 15, 2024 and are to be applied on a prospective basis. The Company's annual reporting requirements will be effective for fiscal year 2025. Companies can choose to early adopt and apply the guidance retrospectively. The Company is in the process of analyzing the impact of the ASU on related disclosures.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no material changes to the Company’s significant accounting policies set forth in "Note 1" of Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023.</span></div> <div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements and condensed footnotes have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP") for interim financial information as well as the instructions to Form 10-Q and the rules and regulations of the U.S. Securities and Exchange Commission ("SEC"). Certain information and disclosures normally included in the financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The condensed consolidated balance sheet as of December 31, 2023, included herein, was derived from the audited financial statements as of that date but does not include all disclosures, including notes required by U.S. GAAP. In the opinion of management, the accompanying unaudited condensed consolidated financial statements reflect all adjustments, which include only normal recurring adjustments, necessary for the fair statement of the financial position, results of operations and cash flows for the interim periods. The results of operations for the three and nine months ended September 30, 2024 are not necessarily indicative of the results of operations expected for the entire year ending December 31, 2024 or for any other future annual or interim periods. These condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 filed with the SEC on February 22, 2024.</span></div> <div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of the unaudited condensed consolidated financial statements in conformity with U.S. GAAP requires management to make certain estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of assets and liabilities at the date of the condensed consolidated financial statements and the reported results of operations during the reporting period. The Company’s management regularly assesses these estimates, which primarily affect revenue recognition, allowance for credit loss, the valuation of goodwill and intangible assets, leases, stock-based compensation and income tax provision. Actual results could differ from those estimates and such differences may be material to the accompanying unaudited condensed consolidated financial statements.</span></div> <div style="margin-top:12pt;padding-left:13.5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None. </span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recently Issued Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2023, the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2023-07 requiring enhanced segment disclosures. The ASU requires disclosure of significant segment expenses regularly provided to the chief operating decision maker ("CODM") included within segment operating profit or loss. Additionally, the ASU requires a description of how the CODM utilizes segment operating profit or loss to assess segment performance. The requirements of the ASU are effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company's annual reporting requirements will be effective for fiscal 2024 and interim reporting requirements will be effective beginning with the first quarter of fiscal 2025. Early adoption is permitted and retrospective application is required for all periods presented. The Company is in the process of analyzing the impact of the ASU on related disclosures.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09 requiring improvements to income tax disclosures. The new ASU requires disclosure of disaggregated information about the effective tax rate and income taxes paid. The requirements of the ASU are effective for annual periods beginning after December 15, 2024 and are to be applied on a prospective basis. The Company's annual reporting requirements will be effective for fiscal year 2025. Companies can choose to early adopt and apply the guidance retrospectively. The Company is in the process of analyzing the impact of the ASU on related disclosures.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no material changes to the Company’s significant accounting policies set forth in "Note 1" of Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023.</span></div> Fair Value of Financial Instruments<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. For certain of the Company’s financial instruments, including certain cash equivalents, accounts receivable, accounts payable and accrued liabilities, the carrying amounts approximate their fair values due to the relatively short maturity of these balances.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company measures and reports certain cash equivalents, marketable securities, derivative foreign currency forward contracts at fair value in accordance with the provisions of the authoritative accounting guidance that addresses fair value measurements. This guidance establishes a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that the most observable inputs be used when available. The hierarchy is broken down into three levels based on the reliability of inputs as follows:</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 1 </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">- Valuations based on quoted prices in active markets for identical assets or liabilities.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 2 </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">- Valuations based on other than quoted prices in active markets for identical assets and liabilities, including quoted prices for identical assets or liabilities in less active or inactive markets, quoted prices for similar assets or liabilities in active markets, or inputs other than quoted prices that are observable for substantially the full term of the assets or liabilities.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 3 </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">- Valuations based on inputs that are generally unobservable and typically reflect management’s estimates of assumptions that market participants would use in pricing the asset or liability.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's financial instruments consist of assets and liabilities measured using Level 1 and 2 inputs. Level 1 assets include a highly liquid money market fund, which is valued using unadjusted quoted prices that are available in an active market for an identical asset. Level 2 assets include fixed-income U.S. Treasury and government agency securities, commercial paper, corporate bonds, asset-backed securities and derivative financial instruments consisting of foreign currency forward contracts. The securities, bonds and commercial paper are valued using prices from independent pricing services based on quoted prices of identical instruments in less active or inactive markets, quoted prices of similar instruments in active markets, or industry models using data inputs such as interest rates and prices that can be directly observed or corroborated in active markets. The foreign currency forward contracts are valued using observable inputs, such as quotations on forward foreign exchange points and foreign interest rates.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth by level within the fair value hierarchy the fair value of the Company's financial assets and liabilities measured at fair value on a recurring basis:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Money market funds</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:114%">$</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:114%">2,172 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,172 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14,383 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14,383 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">231,248 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">231,248 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">121,371 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">121,371 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">19 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">19 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.36pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,172 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">375,859 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">378,031 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,569 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,569 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.36pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total liabilities</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:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,569 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,569 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Money market funds</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:114%">$</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:114%">87 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">87 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">208,536 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">208,536 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">56,465 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">56,465 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,881 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,881 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">111 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">111 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">87 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">333,272 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">333,359 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,986 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,986 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total liabilities</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:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no transfers between Level 1, Level 2 and Level 3 categories during the three and nine months ended September 30, 2024 and 2023.</span></div><div style="margin-top:12pt;padding-left:22.5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash equivalent and investments</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's cash equivalents and marketable securities consist of the following:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.086%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Amortized Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Unrealized Gains</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Cash equivalents: (1)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Money market funds</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:114%">$</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:114%">2,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">1,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">37,247 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">37,247 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">40,419 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">1 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(1)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">40,419 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Short-term marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">13,376 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,383 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">38,697 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(9)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">38,836 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">98,450 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">252 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">98,694 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">150,523 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">408 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(18)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">150,913 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Long-term marketable securities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">81,514 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,026 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(5)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">82,535 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">8,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">113 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">94,556 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">759 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">95,307 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">184,795 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">1,898 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(13)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">186,680 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">375,737 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,307 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(32)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">378,012 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:31.5pt;text-indent:-9pt"><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:1.84pt">Excludes cash of $195.0 million.</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Amortized Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Unrealized Gains</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Cash equivalents: (2)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Money market funds</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:114%">$</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:114%">87 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">87 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">54,620 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,624 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.72pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">54,707 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,711 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Short-term marketable securities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">54,254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">32 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">23,013 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(149)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">22,865 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">144,901 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">52 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(204)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">144,749 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19.72pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">222,168 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">85 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(360)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">221,893 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Long-term marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">33,337 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">285 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(22)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">33,600 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">13,785 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">102 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,881 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">9,116 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">49 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(2)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">9,163 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.72pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">56,238 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">436 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(30)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">56,644 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">333,113 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">525 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(390)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">333,248 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:31.5pt;text-indent:-9pt"><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:1.84pt">Excludes cash of $149.0 million.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the gross unrealized losses and fair value of the Company's marketable securities that were in an unrealized loss position aggregated by length of time: </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.960%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.055%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Less than 12 months</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">12 months or longer</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Total</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Commercial paper</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:114%">$</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:114%">7,968 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">7,968 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">10,730 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">668 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">11,398 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(14)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">29,689 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(17)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">29,689 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(17)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">48,387 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(25)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">668 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(7)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">49,055 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(32)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.960%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.055%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Less than 12 months</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">12 months or longer</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Total</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Commercial paper</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:114%">$</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:114%">24,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">24,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,485 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,485 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">20,717 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(171)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">20,717 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(171)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">43,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(18)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">18,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(188)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">61,545 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(206)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">68,211 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(25)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">40,374 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(365)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">108,585 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(390)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considered the extent to which any unrealized losses on its marketable securities were driven by credit risk and other factors, including market risk, and if it is more-likely-than-not that the Company would have to sell the security before the recovery of the amortized cost basis. At September 30, 2024 and December 31, 2023, the unrealized losses related to its marketable securities were due to higher market interest rates compared to when the investments were initiated. The Company does not believe the unrealized losses represent credit risk, and the Company does not intend to sell any of the securities in an unrealized loss position and it is not likely that the Company would be required to sell these securities before recovery of their amortized cost basis, which may be at maturity. Thus, no credit loss was recognized for the Company's marketable securities for the three and nine months ended September 30, 2024 and 2023.</span></div><div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes the fair value of marketable securities by contractual maturity:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Amortized Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Due within One Year</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:114%">$</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:114%">190,942 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">191,332 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Due after One Year through Five Years</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:114%">176,070 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">177,842 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">8,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">375,737 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">378,012 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:13.5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Non-Marketable Securities</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the fiscal year ended December 31, 2018, the Company invested $2.5 million in preferred stock of a privately-held company. The fair value of the investment is not readily available, and there are no quoted market prices for the investment. The Company accounts for the investment at cost less impairment and will measure the investment at fair value when the Company identifies observable price changes. The investment is assessed for impairment whenever events or changes in circumstances indicate that the fair value of the investment is less than carrying value. During the second quarter of 2023, the Company identified an observable price change in the investment and recognized an immaterial unrealized loss in other income (expense), net of the condensed consolidated statement of operations. The investment is included in other noncurrent assets on the condensed consolidated balance sheets. The Company has not received any dividends from the investment. </span></div><div style="margin-top:23pt;padding-left:13.5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Derivative Financial Instruments</span></div><div style="margin-top:12pt;padding-left:13.5pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Designated cash flow hedges</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company enters into foreign currency forward contracts to reduce the risk of variability in future cash flow due to foreign currency exchange rate fluctuation from certain forecasted subscription revenue orders billed in British Pound ("GBP") and Euro ("EUR") and operating expenses incurred in Indian Rupee ("INR"), which are designated as cash flow hedges. Hedge effectiveness is assessed at inception and at each reporting period utilizing regression analysis. Unrealized foreign exchange gains or losses related to those designated cash flow hedge contracts are recorded in accumulated other comprehensive income ("AOCI") and will be reclassified into revenues or operating expenses, respectively, in the same periods when the hedged transactions are recognized in earnings.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September 30, 2024, the Company had designated cash flow hedge forward contracts with notional amounts of €46.4 million, £18.0 million and Rs.4,273.0 million. As of December 31, 2023, the Company had designated cash flow hedge forward contracts with notional amounts of €48.5 million, £14.6 million and Rs.4,042.0 million. </span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the amount of net unrealized loss of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$1.5 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> before tax on the foreign currency forward contracts for GBP and EUR reported in AOCI is expected to be reclassified into revenue within the next 12 months. As of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, an immaterial amount of net unrealized loss before tax on the foreign currency forward contracts for INR reported in AOCI is expected to be reclassified into operating expenses within the next 12 months.</span></div><div style="margin-top:12pt;padding-left:13.5pt;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%">Non-designated forward contracts</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also uses foreign currency forward contracts to hedge certain foreign currency denominated assets or liabilities, which are not designated as cash flow hedges. Unrealized foreign exchange gain or losses related to the non-designated forward contracts are recorded in other income (expenses), net and offset the foreign exchange gain or loss on the underlying net monetary assets or liabilities.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September 30, 2024, the Company had non-designated forward contracts with notional amounts of €12.5 million, £5.1 million, Rs.1,208.0 million, and Canadian Dollar ("C$" or "CAD") 1.2 million. As of December 31, 2023, the Company had non-designated forward contracts with notional amounts of €19.2 million, £6.0 million, Rs.440.0 million, and C$1.0 million.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">the fair value of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">derivative financial instruments as of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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%">December 31, 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts designated as cash flow hedge</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:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">63 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts not designated as hedging instruments</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:114%">19 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">48 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">19 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">111 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Liabilities</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts designated as cash flow hedge</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:114%">$</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:114%">2,474 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,502 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts not designated as hedging instruments</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:114%">95 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">484 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">2,569 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,986 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company presents its derivative assets and derivative liabilities at gross fair values in the condensed consolidated balance sheets. However, under the master netting agreements with the respective counterparties of the foreign exchange contracts, subject to applicable requirements, the Company is allowed to net settle transactions of the same currency with a single net amount payable by one party to the other. The potential offset to both assets and liabilities under the right of set-off associated with the Company's foreign currency exchange contracts are immaterial as of September 30, 2024 and December 31, 2023. The derivatives held by the Company are not subject to any credit contingent features negotiated with its counterparties. The Company is not required to pledge nor is entitled to receive cash collateral related to the above contracts. The counterparties to these derivatives are large, global financial institutions that the Company believes are creditworthy, and therefore, it does not consider the risk of counterparty nonperformance to be material.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes the gains (losses) recognized from forward contracts and other foreign currency transactions in other income (expense), net in the condensed consolidated statements of operations:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Net gains (losses) from non-designated forward 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:114%">$</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:114%">(896)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(457)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">690 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Other foreign currency transactions gains (losses)</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:114%">1,501 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,248)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(958)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,979)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total foreign exchange gains (losses), net</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:114%">$</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:114%">605 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(708)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,415)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,289)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth by level within the fair value hierarchy the fair value of the Company's financial assets and liabilities measured at fair value on a recurring basis:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Money market funds</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:114%">$</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:114%">2,172 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,172 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14,383 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14,383 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">231,248 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">231,248 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">121,371 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">121,371 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">19 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">19 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.36pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,172 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">375,859 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">378,031 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,569 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,569 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.36pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total liabilities</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:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,569 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,569 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Money market funds</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:114%">$</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:114%">87 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">87 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">208,536 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">208,536 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">56,465 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">56,465 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,881 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,881 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">111 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">111 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">87 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">333,272 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">333,359 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,986 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,986 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total liabilities</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:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 2172000 0 2172000 0 14383000 14383000 0 231248000 231248000 0 121371000 121371000 0 8838000 8838000 0 19000 19000 2172000 375859000 378031000 0 2569000 2569000 0 2569000 2569000 87000 0 87000 0 54279000 54279000 0 208536000 208536000 0 56465000 56465000 0 13881000 13881000 0 111000 111000 87000 333272000 333359000 0 1986000 1986000 0 1986000 1986000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's cash equivalents and marketable securities consist of the following:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.086%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Amortized Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Unrealized Gains</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Cash equivalents: (1)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Money market funds</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:114%">$</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:114%">2,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">1,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">37,247 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">37,247 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">40,419 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">1 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(1)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">40,419 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Short-term marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">13,376 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,383 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">38,697 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(9)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">38,836 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">98,450 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">252 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">98,694 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">150,523 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">408 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(18)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">150,913 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Long-term marketable securities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">81,514 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,026 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(5)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">82,535 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">8,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">113 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">94,556 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">759 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">95,307 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">184,795 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">1,898 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(13)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">186,680 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">375,737 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">2,307 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(32)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">378,012 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:31.5pt;text-indent:-9pt"><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:1.84pt">Excludes cash of $195.0 million.</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Amortized Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Unrealized Gains</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Cash equivalents: (2)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Money market funds</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:114%">$</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:114%">87 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">87 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">54,620 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,624 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.72pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">54,707 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,711 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Short-term marketable securities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Commercial paper</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:114%">54,254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">32 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">54,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">23,013 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(149)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">22,865 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">144,901 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">52 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(204)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">144,749 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19.72pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">222,168 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">85 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(360)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">221,893 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Long-term marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">33,337 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">285 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(22)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">33,600 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">13,785 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">102 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">13,881 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 8.92pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">9,116 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">49 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(2)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">9,163 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.72pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</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:114%">56,238 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">436 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(30)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">56,644 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">333,113 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">525 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(390)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">333,248 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:31.5pt;text-indent:-9pt"><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:1.84pt">Excludes cash of $149.0 million.</span></div> 2172000 0 0 2172000 1000000 0 0 1000000 37247000 1000 1000 37247000 40419000 1000 1000 40419000 13376000 8000 1000 13383000 38697000 148000 9000 38836000 98450000 252000 8000 98694000 150523000 408000 18000 150913000 81514000 1026000 5000 82535000 8725000 113000 0 8838000 94556000 759000 8000 95307000 184795000 1898000 13000 186680000 375737000 2307000 32000 378012000 195000000.0 87000 0 0 87000 54620000 4000 0 54624000 54707000 4000 0 54711000 54254000 32000 7000 54279000 23013000 1000 149000 22865000 144901000 52000 204000 144749000 222168000 85000 360000 221893000 33337000 285000 22000 33600000 13785000 102000 6000 13881000 9116000 49000 2000 9163000 56238000 436000 30000 56644000 333113000 525000 390000 333248000 149000000.0 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the gross unrealized losses and fair value of the Company's marketable securities that were in an unrealized loss position aggregated by length of time: </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.960%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.055%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Less than 12 months</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">12 months or longer</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Total</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Commercial paper</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:114%">$</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:114%">7,968 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">7,968 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">10,730 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">668 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">11,398 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(14)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">29,689 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(17)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">29,689 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(17)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">48,387 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(25)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">668 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(7)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">49,055 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(32)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.960%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.055%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Less than 12 months</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">12 months or longer</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Total</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="33" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Commercial paper</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:114%">$</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:114%">24,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">24,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,485 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,485 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Corporate bonds</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">20,717 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(171)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">20,717 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(171)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">U.S. Treasury and government agencies</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:114%">43,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(18)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">18,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(188)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">61,545 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(206)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">68,211 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(25)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">40,374 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(365)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">108,585 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(390)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 7968000 1000 0 0 7968000 1000 10730000 7000 668000 7000 11398000 14000 29689000 17000 0 0 29689000 17000 48387000 25000 668000 7000 49055000 32000 24838000 7000 0 0 24838000 7000 0 0 1485000 6000 1485000 6000 0 0 20717000 171000 20717000 171000 43373000 18000 18172000 188000 61545000 206000 68211000 25000 40374000 365000 108585000 390000 <div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes the fair value of marketable securities by contractual maturity:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Amortized Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Fair Value</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Due within One Year</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:114%">$</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:114%">190,942 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">191,332 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Due after One Year through Five Years</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:114%">176,070 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">177,842 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Asset-backed securities</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:114%">8,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">8,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">375,737 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">378,012 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 190942000 191332000 176070000 177842000 8725000 8838000 375737000 378012000 2500000 46400000 18000000.0 4273000000 48500000 14600000 4042000000 -1500000 12500000 5100000 1208000000 1200000 19200000 6000000.0 440000000.0 1000000.0 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">the fair value of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">derivative financial instruments as of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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%">December 31, 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts designated as cash flow hedge</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:114%">$</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">63 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts not designated as hedging instruments</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:114%">19 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">48 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">19 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">111 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Liabilities</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts designated as cash flow hedge</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:114%">$</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:114%">2,474 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,502 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 9.64pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Foreign currency forward contracts not designated as hedging instruments</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:114%">95 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">484 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">2,569 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,986 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 0 63000 19000 48000 19000 111000 2474000 1502000 95000 484000 2569000 1986000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes the gains (losses) recognized from forward contracts and other foreign currency transactions in other income (expense), net in the condensed consolidated statements of operations:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Net gains (losses) from non-designated forward 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:114%">$</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:114%">(896)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(457)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">690 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Other foreign currency transactions gains (losses)</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:114%">1,501 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,248)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(958)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,979)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total foreign exchange gains (losses), net</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:114%">$</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:114%">605 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(708)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,415)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,289)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> -896000 540000 -457000 690000 1501000 -1248000 -958000 -1979000 605000 -708000 -1415000 -1289000 Accumulated Other Comprehensive Income (Loss)<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components and changes in accumulated other comprehensive income (loss) for the three and nine months ended September 30, 2024 and 2023 were as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Available-for-Sale Debt Securities</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Cash Flow Hedges</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Total</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:700;line-height:114%">Balances at December 31, 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:114%">$</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:114%">108 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">(1,812)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,704)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</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:114%">(436)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,222 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">786 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">218 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">218 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">29 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(336)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(307)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">(407)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">1,104 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">697 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at March 31, 2024</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(299)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(708)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(1,007)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(221)</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">465 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">244 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">414 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">414 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(185)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(185)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">(221)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">694 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">473 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at June 30, 2024</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(520)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(14)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(534)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,796 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(3,065)</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(269)</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">423 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">423 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">(540)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">627 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">87 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">2,256 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(2,015)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">241 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at September 30, 2024</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">1,736 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(2,029)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(293)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at December 31, 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:114%">$</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:114%">(2,705)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">758 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,947)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</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:114%">1,131 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(443)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">688 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(534)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(534)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">222 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">222 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">1,131 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(755)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">376 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at March 31, 2023</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,574)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">3 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,571)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">312 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">65 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">377 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(665)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(665)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">312 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(457)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(145)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at June 30, 2023</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(1,262)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(454)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(1,716)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">339 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,249 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,588 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(580)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(580)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(159)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(159)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">339 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">510 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">849 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at September 30, 2023</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:114%">$</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:114%">(923)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">56 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(867)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The effects on income before income taxes of amounts reclassified from AOCI to the condensed consolidated statements of operations were as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Reclassification of AOCI - Cash flow hedges</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Revenues</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:114%">$</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:114%">(320)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">721 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(974)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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:114%">$</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:114%">2,918 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Cost of revenues</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:114%">(25)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(32)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(19)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(262)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Research and development</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:114%">(64)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(89)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(51)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(724)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Sales and marketing</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:114%">(6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(45)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">General and administrative</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:114%">(8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(14)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(108)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">(423)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">580 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,055)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,779 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There was no reclassification of AOCI to other income (expense), net related to Available-for-sale debt securities during the three and nine months ended September 30, 2024 and 2023.</span></div> <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components and changes in accumulated other comprehensive income (loss) for the three and nine months ended September 30, 2024 and 2023 were as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Available-for-Sale Debt Securities</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Cash Flow Hedges</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Total</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:700;line-height:114%">Balances at December 31, 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:114%">$</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:114%">108 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">(1,812)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,704)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</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:114%">(436)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,222 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">786 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">218 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">218 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">29 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(336)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(307)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">(407)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">1,104 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">697 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at March 31, 2024</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(299)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(708)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(1,007)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(221)</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">465 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">244 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">414 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">414 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(185)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(185)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">(221)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">694 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">473 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at June 30, 2024</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(520)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(14)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(534)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2,796 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(3,065)</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(269)</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">423 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">423 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">(540)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">627 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">87 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">2,256 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(2,015)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">241 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at September 30, 2024</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">1,736 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(2,029)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(293)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at December 31, 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:114%">$</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:114%">(2,705)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">758 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,947)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</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:114%">1,131 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(443)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">688 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(534)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(534)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">222 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">222 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">1,131 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(755)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">376 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at March 31, 2023</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,574)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">3 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,571)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">312 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">65 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">377 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(665)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(665)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">312 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(457)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(145)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at June 30, 2023</span></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(1,262)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(454)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(1,716)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Change in unrealized gains (losses) during the period</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">339 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,249 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,588 </span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Amount reclassified into income during the period</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:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(580)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(580)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Tax effect</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:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(159)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(159)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 34.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Net change during the period</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:114%">339 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">510 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">849 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Balances at September 30, 2023</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:114%">$</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:114%">(923)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">56 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(867)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 108000 -1812000 -1704000 -436000 1222000 786000 0 -218000 -218000 -29000 336000 307000 -407000 1104000 697000 -299000 -708000 -1007000 -221000 465000 244000 0 -414000 -414000 0 185000 185000 -221000 694000 473000 -520000 -14000 -534000 2796000 -3065000 -269000 0 -423000 -423000 540000 -627000 -87000 2256000 -2015000 241000 1736000 -2029000 -293000 -2705000 758000 -1947000 1131000 -443000 688000 0 534000 534000 0 -222000 -222000 1131000 -755000 376000 -1574000 3000 -1571000 312000 65000 377000 0 665000 665000 0 -143000 -143000 312000 -457000 -145000 -1262000 -454000 -1716000 339000 1249000 1588000 0 580000 580000 0 159000 159000 339000 510000 849000 -923000 56000 -867000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The effects on income before income taxes of amounts reclassified from AOCI to the condensed consolidated statements of operations were as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Reclassification of AOCI - Cash flow hedges</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Revenues</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:114%">$</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:114%">(320)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">721 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(974)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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:114%">$</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:114%">2,918 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Cost of revenues</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:114%">(25)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(32)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(19)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(262)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Research and development</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:114%">(64)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(89)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(51)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(724)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Sales and marketing</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:114%">(6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(45)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">General and administrative</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:114%">(8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(14)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(108)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">(423)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">580 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">(1,055)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">1,779 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> -320000 721000 -974000 2918000 25000 32000 19000 262000 64000 89000 51000 724000 6000 6000 5000 45000 8000 14000 6000 108000 -423000 580000 -1055000 1779000 0 0 0 0 Property and Equipment, Net<div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net, consists of the following:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Computer equipment</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:114%">$</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:114%">182,926 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">179,002 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Computer software</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:114%">26,157 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">26,133 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Leasehold improvements</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:114%">21,894 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">20,924 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Scanner appliances</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:114%">18,661 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">18,369 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Furniture, fixtures and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">5,087 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">6,699 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total property and equipment</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:114%">254,725 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">251,127 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Less: accumulated depreciation and amortization</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:114%">(227,382)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(218,528)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Property and equipment, net</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:114%">$</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:114%">27,343 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">32,599 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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%">December 31, 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, physical scanner appliances and other computer equipment that are or will be subject to leases by customers had a net carrying value of $9.4 million and $10.1 million, respectively, including assets that had not been placed in service of $5.8 million and $6.4 million, respectively. </span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation and amortization expenses relating to property and equipment were $3.6 million and $5.8 million for the three months ended </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024 and 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, respectively, and $12.1 million and $18.4 million</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> for the nine months ended September 30, 2024 and 2023, respectively, </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">which were mainly recorded in cost of revenues in the condensed consolidated statements of operations.</span></div> <div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net, consists of the following:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">(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:114%">Computer equipment</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:114%">$</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:114%">182,926 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">179,002 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Computer software</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:114%">26,157 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">26,133 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Leasehold improvements</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:114%">21,894 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">20,924 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Scanner appliances</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:114%">18,661 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">18,369 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Furniture, fixtures and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">5,087 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">6,699 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total property and equipment</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:114%">254,725 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">251,127 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Less: accumulated depreciation and amortization</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:114%">(227,382)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">(218,528)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Property and equipment, net</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:114%">$</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:114%">27,343 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">32,599 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 182926000 179002000 26157000 26133000 21894000 20924000 18661000 18369000 5087000 6699000 254725000 251127000 227382000 218528000 27343000 32599000 9400000 10100000 5800000 6400000 3600000 5800000 12100000 18400000 Revenue from Contracts with Customers<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records deferred revenue when cash payments are received or due in advance of its performance obligations offset by revenue recognized in the period. Revenues o</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">f $66.8 million and $57.2 million were recognized during the three months ended </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024 and 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, respectively, and $296.5 million and $257.4 million</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">were recognized during the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine months ended September 30, 2024 and 2023, respectively,</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> which amounts were included in the deferred revenue balances of $364.9 million and $317.2 million as of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">December 31, 2023 and 2022</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, respectively. </span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's payment terms vary by the type and location of its customers. The term between invoicing and when payment is due is not significant. In certain circumstances, based on the credit quality of the customer, the Company requires payment before the products or services are delivered to the customer.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the expected revenue from all remaining performance obligations as of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.082%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">2024 (remaining three months)</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:114%">$</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:114%">63,367 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2025</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:114%">193,560 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2026</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:114%">100,797 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2027</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:114%">24,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2028</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:114%">1,018 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2029 and 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:114%">387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">383,301 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues allocated to remaining performance obligations represents the transaction price of noncancelable orders for which service has not been performed, which include deferred revenue and the amounts that will be invoiced and recognized as revenues in future periods from open contracts and excludes unexercised renewals. The Company applied the short-term contract exemption to exclude the remaining performance obligations that are part of a contract that has an original expected duration of one year or less.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time, the Company enters into contracts with customers that extend beyond one year, with certain of its customers electing to pay for more than one year of services upon contract execution. The Company concluded that these contracts did not contain a financing component.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues by sales channel are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Three Months Ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Nine Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Direct</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:114%">$</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:114%">81,636 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">80,499 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">242,065 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">234,410 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Partner</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:114%">72,231 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">61,497 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">206,315 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">175,478 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">153,867 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">141,996 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">448,380 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">409,888 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company utilizes partners to enable and accelerate the adoption of its cloud platform by increasing its distribution capabilities and market awareness of its cloud platform as well as by targeting geographic regions outside the reach of its direct sales force. The Company's channel partners maintain relationships with their customers throughout the territories in which they operate and provide their customers with services and third-party solutions to help meet those customers’ evolving security and compliance requirements. As such, these partners</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">offer the Company's IT security and compliance solutions in conjunction with one or more of their own products or services and act as a conduit through which the Company can connect with these prospective customers to offer its solutions. For sales involving a channel partner, the channel partner engages with the prospective customer directly and involves the Company's sales team as needed to assist in developing and closing an order. When a channel partner secures a sale, the Company sells the associated subscription to the channel partner who in turn resells the subscription to the customer. Sales to channel partners are made at a discount and revenues are recorded at this discounted price over the subscription terms. The Company does not have any influence or specific knowledge of its partners' selling terms with their customers. 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%">,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> "Segment and Geographic Area Information" for disaggregation of revenue by geographic area.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred costs to obtain contracts are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.778%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Current</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:114%">$</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:114%">6,796 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">5,858 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Noncurrent</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:114%">$</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:114%">14,041 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">11,844 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> September 30, 2024 and 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company recognized $1.8 million and $1.5 million, respectively, of amortization expense relating to deferred costs to obtain contracts in sales and marketing expense in the condensed consolidated statements of operations. For the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> September 30, 2024 and 2023</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company recognized $5.2 million and $4.4 million, respectively, of amortization expense relating to deferred costs to obtain contracts in sales and marketing expense in the condensed consolidated statements of operations. During the same periods, there was no impairment loss related to the deferred costs to obtain contracts.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2022,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">the net carrying value of the Company’s accounts receivable, current deferred revenues, and noncurrent deferred revenues were $121.8 million, $293.7 million and $23.5 million, respectively.</span></div> 66800000 57200000 296500000 257400000 364900000 317200000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the expected revenue from all remaining performance obligations as of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.082%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">2024 (remaining three months)</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:114%">$</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:114%">63,367 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2025</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:114%">193,560 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2026</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:114%">100,797 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2027</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:114%">24,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2028</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:114%">1,018 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2029 and 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:114%">387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">383,301 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 63367000 193560000 100797000 24172000 1018000 387000 383301000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues by sales channel are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Three Months Ended</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Nine Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Direct</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:114%">$</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:114%">81,636 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">80,499 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">242,065 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">234,410 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Partner</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:114%">72,231 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">61,497 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">206,315 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">175,478 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">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:114%">$</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:114%">153,867 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">141,996 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">448,380 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">409,888 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 81636000 80499000 242065000 234410000 72231000 61497000 206315000 175478000 153867000 141996000 448380000 409888000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred costs to obtain contracts are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.778%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.557%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.084%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Current</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:114%">$</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:114%">6,796 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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:114%">$</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:114%">5,858 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Noncurrent</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:114%">$</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:114%">14,041 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">11,844 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 6796000 5858000 14041000 11844000 1800000 1500000 5200000 4400000 0 0 121800000 293700000 23500000 Intangible Assets, Net<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible assets consist primarily of developed technology and patent licenses acquired from business or asset acquisitions. Acquired intangibles are amortized on a straight-line basis over the respective estimated useful lives of the assets.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of intangible assets are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.930%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.933%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Weighted Average Life (Years)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Accumulated Amortization</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Net Book Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Developed technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4.6</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">40,141 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(32,730)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">7,411 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Patent licenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,387)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Assembled workforce</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">359 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(359)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangibles subject to amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">41,887 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(34,476)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">7,411 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Intangible assets not subject to amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:114%">40 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangible assets, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #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:114%">$</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:114%">7,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></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.748%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Weighted Average Life (Years)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Accumulated Amortization</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Net Book Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Developed technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4.6</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">40,141 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(30,667)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">9,474 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Patent licenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,322)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">65 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Assembled workforce</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">359 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(223)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">136 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangibles subject to amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">41,887 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(32,212)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">9,675 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Intangible assets not subject to amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:114%">40 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangible assets, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #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:114%">$</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:114%">9,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"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible asset amortization expense was $0.7 million and $0.8 million for the three months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2023, respectively, and $2.3 million</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$2.3 million</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> f</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">or the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> September 30, 2024 and 2023, respectively.</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Intangible asset amortization expenses were primarily recorded in cost of revenues in the condensed consolidated statements of operations.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company expects amortization expense in future periods to be as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.082%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">2024 (remaining three months)</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:114%">$</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:114%">640 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2025</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:114%">2,556 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2026</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:114%">2,477 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2027</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:114%">1,738 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total expected future amortization expense</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:114%">$</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:114%">7,411 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of intangible assets are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.930%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.933%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Weighted Average Life (Years)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Accumulated Amortization</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Net Book Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Developed technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4.6</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">40,141 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(32,730)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">7,411 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Patent licenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,387)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Assembled workforce</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">359 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(359)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangibles subject to amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">41,887 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(34,476)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">7,411 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Intangible assets not subject to amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:114%">40 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangible assets, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #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:114%">$</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:114%">7,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></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.748%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%"> </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31, 2023</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(in thousands)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Weighted Average Life (Years)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Cost</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Accumulated Amortization</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Net Book Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Developed technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4.6</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">40,141 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(30,667)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">9,474 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Patent licenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">14.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">1,387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(1,322)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">65 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Assembled workforce</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2.0</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">359 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">(223)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">136 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangibles subject to amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">41,887 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">(32,212)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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:114%">$</span></td><td style="background-color:#ffffff;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:114%">9,675 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Intangible assets not subject to amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:114%">40 </span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total intangible assets, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #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:114%">$</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:114%">9,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"></td></tr></table></div> P4Y7M6D 40141000 32730000 7411000 P14Y 1387000 1387000 0 P2Y 359000 359000 0 41887000 34476000 7411000 40000 7451000 P4Y7M6D 40141000 30667000 9474000 P14Y 1387000 1322000 65000 P2Y 359000 223000 136000 41887000 32212000 9675000 40000 9715000 700000 800000 2300000 2300000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company expects amortization expense in future periods to be as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.718%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.082%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">2024 (remaining three months)</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:114%">$</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:114%">640 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2025</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:114%">2,556 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2026</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:114%">2,477 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">2027</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:114%">1,738 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Total expected future amortization expense</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:114%">$</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:114%">7,411 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 640000 2556000 2477000 1738000 7411000 Leases<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases certain offices, computer equipment and its shared cloud platform facilities under non-cancelable operating leases for varying periods through 2030</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">.</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> While under the Company's lease agreements the Company has options to extend its certain leases, the Company has not included renewal options in determining the lease terms for calculating its lease liabilities, as these options are not reasonably certain of being exercised. Lease expense was $4.5 million and $3.9 million for the three months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2023, respectively, and $12.1 million and $12.1 million </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">f</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">or the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> September 30, 2024 and 2023, respectively</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to operating leases was as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Cash payments included in the measurement of lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">10,665 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">11,350 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Lease liabilities arising from obtaining right-of-use assets</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:114%">$</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:114%">28,157 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">121 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted average remaining lease term and the weighted average discount rate of the Company's operating leases were as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4.4</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">3.1</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Weighted average discount rate</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:114%">7.4 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">5.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">%</span></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Maturities of the Company's operating lease liabilities as of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:83.748%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.052%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">2024 (remaining three months)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,865 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</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%">12,593 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,194 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,249 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,473 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029 and 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%">7,377 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align: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 minimum 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%">56,751 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: 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%">(9,152)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of net minimum lease payments</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%">47,599 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 4500000 3900000 12100000 12100000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to operating leases was as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">(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:114%">Cash payments included in the measurement of lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">10,665 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">11,350 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Lease liabilities arising from obtaining right-of-use assets</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:114%">$</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:114%">28,157 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">$</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:114%">121 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted average remaining lease term and the weighted average discount rate of the Company's operating leases were as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">September 30,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:114%">December 31,<br/>2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Weighted average remaining lease term (years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">4.4</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">3.1</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">Weighted average discount rate</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:114%">7.4 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">5.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:114%">%</span></td></tr></table></div> 10665000 11350000 28157000 121000 P4Y4M24D P3Y1M6D 0.074 0.052 <div style="margin-top:12pt;text-align:justify;text-indent:27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Maturities of the Company's operating lease liabilities as of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:83.748%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.052%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">2024 (remaining three months)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,865 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</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%">12,593 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,194 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,249 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,473 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029 and 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%">7,377 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align: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 minimum 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%">56,751 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: 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%">(9,152)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of net minimum lease payments</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%">47,599 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 2865000 12593000 12194000 12249000 9473000 7377000 56751000 9152000 47599000 Commitments and Contingencies<div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Indemnifications</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company from time to time enters into certain types of contracts that contingently require it to indemnify various parties against claims from third parties. These contracts primarily relate to (i) the Company's bylaws, under which it must indemnify directors and executive officers, and</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may indemnify other officers and employees, for liabilities arising out of their relationship, (ii) contracts under which the Company must indemnify directors and certain officers for liabilities arising out of their relationship, and (iii) contracts under which the Company</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">be required to indemnify customers or resellers from certain liabilities arising from potential infringement of intellectual property rights, as well as potential damages caused by limited product defects. To date, the Company has not incurred and has not recorded any liability in connection with such indemnifications.</span></div><div style="margin-top:12pt;padding-left:7.2pt;padding-right:7.2pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company maintains director and officer insurance, which may</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">cover certain liabilities arising from its obligation to indemnify its directors.</span></div> Stockholders' Equity and Stock-based Compensation<div style="margin-top:12pt;padding-left:13.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Equity Incentive Plans</span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Restated 2012 Equity Incentive Plan</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 8, 2022 ("Effective Date"), the Company's stockholders approved the Amended and Restated 2012 Equity Incentive Plan (the "Restated 2012 Plan"). Under the Restated 2012 Plan, the Company is authorized to grant to eligible participants incentive stock options, nonstatutory stock options, restricted stock, restricted stock units ("RSUs"), stock appreciation rights, performance units and performance shares. Pursuant to the relevant plan provisions, 3,072 thousand shares were available for grant under the Restated 2012 Plan on the Effective Date. In addition, any outstanding awards or options granted under the previous version of the 2012 Equity Incentive Plan (“Previous 2012 Plan”) will be added back to the shares available for grant under the Restated 2012 Plan if they expire unexercised or are otherwise forfeited after the Effective Date. Any remaining shares available for grant under the Previous 2012 Plan as of the Effective Date were no longer available for future grants under the Restated 2012 Plan.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 12, 2024, the Company's stockholders approved an amendment and restatement to the Restated 2012 Plan to increase the number of shares of the Company's common stock reserved for issuance by 1,092 thousand shares.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, 2,562 thousand shares were available for grant under the Restated 2012 Plan.</span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2021</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employee Stock Purchase Plan</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 9, 2021, the Company’s stockholders approved the 2021 Employee Stock Purchase Plan (the “ESPP”). A total of 600 thousand shares were authorized for issuance to eligible participating employees upon adoption of the ESPP. The ESPP provides for consecutive 6-month offering periods beginning on or about August 16 and February 16 of each year. Eligible employees who elect to participate can contribute from 1% to 15% of their eligible compensation through payroll withholding. During any offering period, contribution rates cannot be changed. However, eligible employees may withdraw from the current offering period. Any contributions made prior to each purchase date in the case of withdrawal or termination of employment will be refunded. On each purchase date, eligible participating employees will purchase the shares at a price per share equal to 85% of the lesser of (i) the fair market value of the Company's stock on the first trading day of the offering period or (ii) the fair market value of the Company's stock on the purchase date (i.e., the last trading day of the offering period).</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the nine</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, 59 thousand shares were issued in connection with the purchase of common stock by participating employees. As of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, 435 thousand shares were available for future purchases.</span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock Options</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock options granted under the Restated 2012 Plan and Previous 2012 Plan (collectively, the "Plans") generally vest based on continued service over four years and expire ten years from the date of grant. </span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the Company’s stock option activity during the </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024 is as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:42.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.994%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Outstanding Options</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted Average Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted Average Remaining<br/>Contractual Life</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Aggregate Intrinsic Value</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(Years)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">Balance as of December 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,447</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97.98 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">142,302 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161.93 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(161)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51.48 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(72)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130.47 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of September 30, 2024</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,408</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110.47 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,988 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested and expected to vest as of September 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,268</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106.81 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.3</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,653 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercisable as of September 30, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">809</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88.39 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,100 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Stock Units</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">RSUs granted under the Plans generally only contain a service-based vesting condition that is typically satisfied over four years.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Performance-based Restricted Stock Units ("PRSUs") granted under the Plans contain both service-based and performance-based vesting conditions. In February 2024, the Company granted PRSUs to its executive officers and certain other members of its senior leadership team. The performance-based vesting condition is satisfied upon the achievement of certain Company annual performance targets, including revenue growth and adjusted EBITDA margin, set by the Compensation and Talent Committee of the board of directors of the Company. The target PRSUs are scheduled to vest in <span style="-sec-ix-hidden:f-997">three</span> equal annual installments over a three-year period. Each annual installments at 200% of the annual target will be considered granted when the performance targets for the corresponding performance year is determined and approved. The actual number of the PRSUs earned and eligible to vest ranges from 0% to 200% of the annual target number of PRSUs granted based on the weighted-average achievement of such Company annual performance metrics set for the corresponding annual performance period. The vesting and release of the first and second installment is capped at 100% of the target number at the end of the first and second year, respectively, with cumulative achievement over 100%, if any, to be vested and released at the end of the third year, together with the vesting of the third installment. For PRSUs granted </span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">under the Plans, any unvested PRSU award may be accelerated in part or in full upon the occurrence of certain events, such as death or disability, or a change in control, as defined in the grant agreement.</span></div><div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the Company’s RSU activity, inclusive of PRSU activity, during the </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024 is as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:66.627%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.990%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.993%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Outstanding RSUs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value<br/>Per Share</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,074</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(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%">133.60 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">410</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2)</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%">159.26 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(332)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3)</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%">127.84 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(178)</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4)</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%">139.68 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of September 30, 2024</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">974</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5)</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%">145.25 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding and expected to vest as of September 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">733</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">142.66 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 139 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 156 thousand PRSUs granted to certain executive officers in the nine months ended September 30, 2024.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 64 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 70 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(5)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:1.84pt">Included 161 thousand PRSUs granted to certain executive officers in 2024, 2023, 2022 and 2021. </span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-based Compensation</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table shows a summary of the stock-based compensation expense included in the condensed consolidated statements of operations:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">Cost of revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,081 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,946 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,967 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,255 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</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,448 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,671 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,911 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,734 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,649 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,229 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,020 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,580 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,676 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,556 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,991 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align: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 stock-based compensation, net of amounts capitalized (1)</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%">20,337 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,522 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,454 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,560 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:31.5pt;text-align:justify;text-indent:-9pt"><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:1.84pt">Total stock-based compensation expense capitalized was de minimis during the three and nine months ended September 30, 2024.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Of the total stock-based compensation expense in the table above, the Company recognized stock-based compensation expenses related to all PRSUs of $3.9 million and $2.7 million during the three months ended September 30, 2024 and 2023, respectively, </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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%">$8.0 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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%">$5.2 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">f</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">or the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> September 30, 2024 and 2023, respectively.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">September 30, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company had unrecognized stock-based compensation expenses of $21.6 million, $80.2 million, $3.9 million, and $1.0 million related to options, RSUs, PRSUs, and ESPP purchase rights, respectively, which are expected to be recognized over weighted-average periods of 2.4 years, 2.6 years, 0.3 years, and 0.4 years, respectively.</span></div><div style="margin-top:12pt;padding-left:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Share Repurchase Program</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's share repurchase program was authorized by the board of directors as follows: </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.112%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.082%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Announcement Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Authorized Dollar Value</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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 millions)</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%">February 12, 2018</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 30, 2018</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 30, 2019</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 7, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 10, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">November 3, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 9, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 7, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total as of September 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,200.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></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Shares may be repurchased from time to time on the open market in accordance with Rule 10b-18 of the Exchange Act of 1934, including pursuant to a pre-set trading plan adopted in accordance with Rule 10b5-1 under the Exchange Act. All share repurchases have been made using cash resources. Repurchased shares are retired and reclassified as authorized and unissued shares of common stock. On retirement of the repurchased shares, common stock is reduced by an amount equal to the number of shares being retired multiplied by the par value. The excess amount that is retired over its par value is first allocated as a reduction to additional paid-in capital based on the original cost of additional paid-in capital per share of identified issuances. The remaining amount is allocated to accumulated deficit.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the nine months ended September 30, 2024 and 2023, the Company repurchased 681 thousand shares and 1,203 thousand shares of its common stock for approximately </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$98.0 million </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and $147.7 million, respectively. As of September 30, 2024, approximately $185.7 million remained available for share repurchases pursuant to the Company's share repurchase program.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Excise tax on stock repurchases net of issue was immaterial to the Company's financial results and cash flows for the nine months ended September 30, 2024 and 2023 and the Company's financial position as of September 30, 2024 and December 31, 2023.</span></div> 3072000 1092000 2562000 600000 P6M 0.01 0.15 0.85 59000 435000 P4Y P10Y <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the Company’s stock option activity during the </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024 is as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:42.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.994%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Outstanding Options</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted Average Exercise<br/>Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted Average Remaining<br/>Contractual Life</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Aggregate Intrinsic Value</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(Years)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">Balance as of December 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,447</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97.98 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">142,302 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161.93 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(161)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51.48 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canceled</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(72)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130.47 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of September 30, 2024</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,408</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110.47 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,988 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested and expected to vest as of September 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,268</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106.81 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.3</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,653 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercisable as of September 30, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">809</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88.39 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,100 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 1447000 97.98 P6Y6M 142302000 194000 161.93 161000 51.48 72000 130.47 1408000 110.47 P6Y6M 35988000 1268000 106.81 P6Y3M18D 35653000 809000 88.39 P5Y 34100000 P4Y P3Y 2 0 2 1 1 <div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the Company’s RSU activity, inclusive of PRSU activity, during the </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024 is as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:66.627%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.990%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.993%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Outstanding RSUs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value<br/>Per Share</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,074</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(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%">133.60 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">410</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2)</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%">159.26 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(332)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3)</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%">127.84 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(178)</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4)</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%">139.68 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of September 30, 2024</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">974</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5)</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%">145.25 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding and expected to vest as of September 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">733</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">142.66 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 139 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 156 thousand PRSUs granted to certain executive officers in the nine months ended September 30, 2024.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 64 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.</span></div><div style="padding-left:22.5pt;text-indent:-13.5pt"><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:1.84pt">Included 70 thousand PRSUs granted to certain executive officers in 2023, 2022 and 2021.</span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(5)</span>Included 161 thousand PRSUs granted to certain executive officers in 2024, 2023, 2022 and 2021. 1074000 133.60 410000 159.26 332000 127.84 178000 139.68 974000 145.25 733000 142.66 139000 139000 139000 156000 64000 64000 64000 70000 70000 70000 161000 161000 161000 161000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table shows a summary of the stock-based compensation expense included in the condensed consolidated statements of operations:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">Cost of revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,081 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,946 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,967 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,255 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</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,448 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,671 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,911 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,734 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,649 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,229 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,020 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,580 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,676 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,556 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,991 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align: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 stock-based compensation, net of amounts capitalized (1)</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%">20,337 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,522 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,454 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,560 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;padding-left:31.5pt;text-align:justify;text-indent:-9pt"><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:1.84pt">Total stock-based compensation expense capitalized was de minimis during the three and nine months ended September 30, 2024.</span></div> 2081000 1946000 5967000 5255000 5448000 5671000 15911000 15734000 3649000 3229000 11020000 8580000 9159000 7676000 23556000 20991000 20337000 18522000 56454000 50560000 3900000 2700000 8000000.0 5200000 21600000 80200000 3900000 1000000.0 P2Y4M24D P2Y7M6D P0Y3M18D P0Y4M24D <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's share repurchase program was authorized by the board of directors as follows: </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.112%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.082%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Announcement Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Authorized Dollar Value</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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 millions)</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%">February 12, 2018</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 30, 2018</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 30, 2019</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 7, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 10, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">November 3, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 9, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 7, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total as of September 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,200.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></tr></table></div> 100000000.0 100000000.0 100000000.0 100000000.0 100000000.0 200000000.0 200000000.0 100000000.0 200000000.0 1200000000 681000 1203000 98000000.0 147700000 185700000 Income Taxes<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's income tax provision for interim periods is determined using an estimate of its annual effective tax rate, adjusted for discrete items, if any, that arise during the period. Each quarter, the Company updates its estimate of the annual effective tax rate, and if the estimated annual effective tax rate changes, the Company makes a cumulative adjustment in such period.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's quarterly tax provision, and estimate of its annual effective tax rate, is subject to variation due to several factors, including variability in pretax income (or loss), the mix of jurisdictions to which such income relates, changes in how the Company does business, tax law developments and possible outcomes of audits. The Company's estimated effective tax rate for the year differs from the U.S. statutory rate of 21% primarily due to non-deductible stock-based compensation expense, state taxes, the benefit of U.S. federal income tax credits, the impact of mandatory capitalization of research expenses for U.S. tax purposes, and the benefits related to foreign-derived intangible income deduction.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded an income tax provision of $6.1 million and $1.5 million for the three months ended September 30, 2024 and 2023, respectively, resulting in an effective tax rate of 11.7% and 3.1%, respectively. The increase in income tax provision for the three months ended September 30, 2024 compared to the three months ended September 30, 2023, was primarily due to the tax effect of an increase in pretax income and a decrease in excess tax benefits arising from stock-based compensation. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded an income tax provision of $26.3 million and $20.1 million for the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024 and 2023, respectively, resulting in an effective tax rate of 16.8% and 15.3%, respectively. The increase in income tax provision for the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2024 compared to the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">nine</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> months ended September 30, 2023, was primarily due to the tax effect of an increase in pretax income. The increase was partially offset by higher foreign derived intangible income benefit, higher research and development tax credits, and discrete tax adjustments.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September 30, 2024, the Company had unrecognized tax benefits of $14.3 million, of which $7.8 million, if recognized, would favorably impact the Company's effective tax rate. As of December 31, 2023, the Company had unrecognized tax benefits of $11.9 million, of which $6.1 million, if recognized, would favorably impact the Company's effective tax rate. Due to various factors, including uncertainties of administrative and regulatory processes in certain jurisdictions, the timing of the resolution of these unrecognized tax benefits is uncertain. It is possible that within the next twelve months the Company may receive additional tax adjustments that could result in changes to the Company's unrecognized tax benefits related to positions on prior year tax filings.</span></div> 6100000 1500000 0.117 0.031 26300000 20100000 0.168 0.153 14300000 7800000 11900000 6100000 Segment and Geographic Area Information<div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under ASC 280</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment Reporting, operating segments are defined as components of an entity about which separate financial information is evaluated regularly by the chief operating decision maker in deciding how to allocate resources and in assessing performance. The Company operates in one segment and has only one reportable segment. The Company’s chief operating decision maker is the Chief Executive Officer, who makes operating decisions, assesses performance and allocates resources on a consolidated basis. All of the Company’s principal operations and decision-making functions are located in the United States.</span></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue by geographic area, based on the customer's billing address, is as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">United States</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%">89,238 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,377 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">262,614 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">246,348 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,629 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,619 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,766 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,540 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total 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%">153,867 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,996 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">448,380 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">409,888 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets, which consist of Property and equipment, net and Operating leases - right of use asset, by geographic area, are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">September 30,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">United States</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%">47,643 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">42,622 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">India</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,404 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,952 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rest of world</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,590 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,416 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Long-lived Assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,637 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,990 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 1 1 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue by geographic area, based on the customer's billing address, is as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">United States</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%">89,238 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,377 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">262,614 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">246,348 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,629 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,619 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,766 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,540 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total 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%">153,867 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,996 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">448,380 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">409,888 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets, which consist of Property and equipment, net and Operating leases - right of use asset, by geographic area, are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">September 30,<br/>2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31,<br/>2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">United States</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%">47,643 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">42,622 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">India</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,404 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,952 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rest of world</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,590 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,416 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Long-lived Assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,637 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,990 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 89238000 85377000 262614000 246348000 64629000 56619000 185766000 163540000 153867000 141996000 448380000 409888000 47643000 42622000 19404000 9952000 1590000 2416000 68637000 54990000 Net Income Per Share<div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The computations for basic and diluted net income per share are as follows: </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands, except per share data)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands, except per share data)</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%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">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%">46,212 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,515 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,715 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,002 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares</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%">36,762 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,766 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,877 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,891 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align: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 potentially dilutive shares:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 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%">Stock options</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%">279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">465 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">372 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">471 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Restricted stock units</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%">91 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">151 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 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%">Employee stock purchase plan</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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted weighted average shares</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%">37,136 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">37,448 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">37,441 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">37,516 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income per share:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</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%">1.26 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.27 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.52 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.01 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.24 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.24 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.46 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.96 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Potentially dilutive shares not included in the calculation of diluted net income per share because doing so would be anti-dilutive are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">Stock options</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">854</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">762</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">585</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">925</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">311</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">186</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%">Employee stock purchase plan</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">—</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">—</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total anti-dilutive shares</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,165</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">777</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">704</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,120</span></td></tr></table></div> <div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The computations for basic and diluted net income per share are as follows: </span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands, except per share data)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands, except per share data)</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%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">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%">46,212 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,515 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,715 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,002 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares</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%">36,762 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,766 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,877 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,891 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align: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 potentially dilutive shares:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 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%">Stock options</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%">279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">465 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">372 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">471 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Restricted stock units</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%">91 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">151 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 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%">Employee stock purchase plan</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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted weighted average shares</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%">37,136 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">37,448 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">37,441 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">37,516 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income per share:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</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%">1.26 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.27 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.52 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.01 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.24 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.24 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.46 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.96 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 46212000 46515000 129715000 111002000 36762000 36766000 36877000 36891000 279000 465000 372000 471000 91000 212000 188000 151000 4000 5000 4000 3000 37136000 37448000 37441000 37516000 1.26 1.27 3.52 3.01 1.24 1.24 3.46 2.96 <div style="margin-top:12pt;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Potentially dilutive shares not included in the calculation of diluted net income per share because doing so would be anti-dilutive are as follows:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.085%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br/>September 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br/>September 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(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%">Stock options</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">854</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">762</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">585</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">925</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">311</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">186</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%">Employee stock purchase plan</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">—</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">—</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total anti-dilutive shares</span></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,165</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">777</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">704</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,120</span></td></tr></table></div> 854000 762000 585000 925000 311000 1000 119000 186000 0 14000 0 9000 1165000 777000 704000 1120000 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 16, 2024, Jeffrey P. Hank, the chair of our board of directors, modified his existing Rule 10b5-1 trading arrangement dated November 21, 2023 (the “Original Plan”), which has the effect of terminating the Original Plan and adopting a new Rule 10b5-1 trading arrangement (the “New Plan”). The New Plan provides for the sale from time to time of an aggregate of up to 8,850 shares of our common stock plus an additional number of shares to be acquired on the date of the Company's 2025 Annual Meeting of Stockholders. Pursuant to the Company's non-employee director compensation program, each non-employee director who has served on our board of directors for at least six months prior to such date will be granted an annual award of restricted stock units on such day. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the New Plan is until June 30, 2025, or earlier if all transactions under the trading arrangement are completed.</span></div> August 16, 2024 August 16, 2024 Jeffrey P. Hank chair of our board of directors true true 8850 June 30, 2025 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 21, 2024, Joo Mi Kim, our Chief Financial Officer, adopted a Rule 10b5-1 trading arrangement providing for the sale from time to time of an aggregate of up to 54,319 shares of our common stock, which represents the gross number of shares authorized to be sold during the duration of the plan, before excluding any shares withheld by the company to satisfy its income tax withholding in connection with the net settlement of the equity awards. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the trading arrangement is until November 20, 2025, or earlier if all transactions under the trading arrangement are completed.</span></div> August 21, 2024 Joo Mi Kim Chief Financial Officer true 54319 November 20, 2025 <div style="margin-top:12pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 21, 2024, Bruce Posey, our Chief Legal Officer, adopted a Rule 10b5-1 trading arrangement providing for the sale from time to time of an aggregate of up to 54,586 shares of our common stock, which represents the gross number of shares authorized to be sold during the duration of the plan, before excluding any shares withheld by the company to satisfy its income tax withholding in connection with the net settlement of the equity awards. The trading arrangement is intended to satisfy the affirmative defense in Rule 10b5-1(c). The duration of the trading arrangement is until December 2, 2025, or earlier if all transactions under the trading arrangement are completed.</span></div> August 21, 2024 Bruce Posey Chief Legal Officer true 54586 December 2, 2025 false false